目录
PyQt5笔记(01) – 创建空白窗体
PyQt5笔记(02) – 按钮点击事件
PyQt5笔记(03) – 消息框
PyQt5笔记(04) – 文本框的使用
PyQt5笔记(05) – 绝对位置
为了便于后期更新,所有目录已汇总到一个链接,具体请移步到这里
正文
本节主要介绍PyQt的调色板的使用,在点击按钮后对窗体进行着色,具体代码如下
import sys
from PyQt5 import QtGui
from PyQt5.QtWidgets import QApplication, QWidget, QPushButton, QColorDialog
from PyQt5.QtGui import QPainter
from PyQt5.QtCore import pyqtSlot
class App(QWidget):
def __init__(self):
super().__init__()
self.title = 'PyQt5 color dialog'
self.left = 100
self.top = 100
self.width = 320
self.height = 200
self.initUI()
def initUI(self):
self.setWindowTitle(self.title)
self.setGeometry(self.left, self.top, self.width, self.height)
button = QPushButton('Open color dialog', self)
button.setToolTip('Opens color dialog')
button.move(10, 10)
button.clicked.connect(self.on_click)
self.show()
@pyqtSlot()
def on_click(self):
qp = QPainter(self)
color = QColorDialog.getColor()
if color.isValid():
# 实例化调色板
palette1 = QtGui.QPalette()
# 设置调色板颜色
palette1.setColor(palette1.Background, color)
# 应用调色板
self.setPalette(palette1)
print(color.name())
if __name__ == '__main__':
app = QApplication(sys.argv)
ex = App()
sys.exit(app.exec_())