解决PyQt5中继承QWidget后不能导入样式和paintevent不起作用

在继承QWidget后不能给该Qwidget设置样式,所以需要在paintEvent添加以下几行代码:

from PyQt5.QtWidgets import QWidget, QStyleOption, QStyle
from PyQt5.QtGui import QPainter

lass ImgLabelWidget(QWidget):
    def __init__(self, parent=None):
        super(ImgLabelWidget, self).__init__(parent)
        self.setObjectName("ImgLabelWidget")
    	    
	
    def paintEvent(self, event):
        # 以下几行代码的功能是避免在多重传值后的功能失效
        opt = QStyleOption()
        opt.initFrom(self)
        p = QPainter(self)
        self.style().drawPrimitive(QStyle.PE_Widget, opt, p, self)

你可能感兴趣的:(QT)