不知道有没有重写QWidget后,设置的样式不生效的兄弟们。
需要在类里面重写paintEvent方法,样式设置就不会丢了哦。
from PyQt5.QtGui import QPainter
from PyQt5.QtWidgets import QWidget, QStyleOption, QStyle
class MyWidget(QWidget):
def __init__(self, parent=None):
super(MyWidget,self).__init__(parent)
self.setObjectName('myWidget')
# 重写paintEvent 不然不能使用样式表定义外观
def paintEvent(self, evt):
opt = QStyleOption()
opt.initFrom(self)
painter = QPainter(self)
# 反锯齿
painter.setRenderHint(QPainter.Antialiasing)
self.style().drawPrimitive(QStyle.PE_Widget, opt, painter, self)
写到这里,防止自己忘记,记录一下.