Qt QGraphicsDropShadowEffect没有显示
问题内容:
我正在创建一个my_widget
继承自的自定义窗口小部件QWidget
。
在这里,我有一个标签要应用,QGraphicsDropShadowEffect
但是由于看不到任何阴影,因此似乎无法使用。
我的代码在Python中,它是:
eff = QGraphicsDropShadowEffect()
self.my_widget_label.setGraphicsEffect(eff)
我尝试对该代码进行各种更改都无济于事。
在Google上进行直通搜索后,我遇到了许多类似的问题,但都没有答案。
可能是什么原因?如何获得阴影?
问题答案:
看看这是否适合您:
#!/usr/bin/env python
#-*- coding:utf-8 -*-
import sip
sip.setapi('QString', 2)
sip.setapi('QVariant', 2)
from PyQt4.QtCore import *
from PyQt4.QtGui import *
class testShadow(QWidget):
def __init__(self, parent=None):
super(testShadow, self).__init__(parent)
self.resize(94, 35)
self.verticalLayout = QVBoxLayout(self)
self.verticalLayout.setObjectName("verticalLayout")
self.label = QLabel(self)
self.label.setText("Text Label")
self.shadow = QGraphicsDropShadowEffect(self)
self.shadow.setBlurRadius(5)
self.label.setGraphicsEffect(self.shadow)
self.verticalLayout.addWidget(self.label)
if __name__ == "__main__":
import sys
app = QApplication(sys.argv)
main = testShadow()
main.show()
sys.exit(app.exec_())