#!/usr/bin/env python # -*- coding: utf-8 -*- ''' Created on 2017年12月10日 @author: Irony."[讽刺] @site: https://pyqt5.com https://github.com/892768447 @email: 892768447@qq.com @file: CustomPaintWidget @description: ''' from PyQt5.QtGui import QPainter from PyQt5.QtWidgets import QWidget, QVBoxLayout, QLabel, QStyleOption, QStyle __Author__ = "By: Irony.\"[讽刺]\nQQ: 892768447\nEmail: 892768447@qq.com" __Copyright__ = "Copyright (c) 2017 Irony.\"[讽刺]" __Version__ = "Version 1.0" class CustomPaintWidget(QWidget): def __init__(self, *args, **kwargs): super(CustomPaintWidget, self).__init__(*args, **kwargs) layout = QVBoxLayout(self) layout.addWidget(QLabel("我是自定义CustomPaintWidget", self)) def paintEvent(self, event): # 解决QSS问题 option = QStyleOption() option.initFrom(self) painter = QPainter(self) self.style().drawPrimitive(QStyle.PE_Widget, option, painter, self) super(CustomPaintWidget, self).paintEvent(event)