python PyQt5 对话框之QColorDialog

10 篇文章 0 订阅
# -*- coding: UTF-8 -*-
'''这个例子显示一个按钮和一个QFrame。QFrame的背景为黑色。
通过QColorDialog,我们可以改变它的背景。'''
import sys
from PyQt5.QtWidgets import (QWidget ,QApplication ,QColorDialog ,QPushButton ,QFrame)
from PyQt5.QtGui import QColor

class Example(QWidget):
    def __init__(self):
        super().__init__()
        self.initUI()

    def initUI(self):
        clo = QColor(0,0,0)#初始化 QFrame 为黑色

        self.bt = QPushButton("colorDailog",self)
        self.bt.move(20 ,20)
        self.bt.clicked.connect(self.showDailog)

        self.frm = QFrame(self)
        self.frm.setStyleSheet("QWidget { background-color: %s }"
                               %clo.name())#设置 frm 颜色为 clo
        self.frm.setGeometry(130 ,22 ,80 ,80) #(130,22)为左上角的点,(80,80)为尺寸

        self.setGeometry(300 ,300 ,250 ,180)
        self.setWindowTitle("Color dialog")
        self.show()

    def showDailog(self):
        '''弹出一个ColorDailog 对话框,把获取的颜色,给clo'''
        clo = QColorDialog.getColor()

        if clo.isValid() : #当clo获取到了有效的颜色
            #设置self.frm的颜色为clo获取到的颜色
            self.frm.setStyleSheet("QWidget { background-color: %s }"%clo.name())

if __name__ == "__main__":
    app = QApplication(sys.argv)
    ex = Example()
    sys.exit(app.exec_())

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值