美文网首页Python资源收集
PyQt5学习记录(五): QColorDialog

PyQt5学习记录(五): QColorDialog

作者: hu9134 | 来源:发表于2017-11-01 15:35 被阅读10次

    QColorDialog提供了选择颜色值的对话框控件。

    下面是运行源代码:

    #!/usr/bin/env python
    # -*- coding: utf-8 -*-
    # @Time    : 2017/11/1 下午3:03
    # @Author  : hukezhu
    # @Site    : 
    # @File    : 1101-01-QColorDialog.py
    # @Software: PyCharm
    
    
    """
        在这个例子中,我们从QColorDialog选择一个颜色值,改变背景一个QFrame控件颜色。
    
    
    """
    
    from PyQt5.QtWidgets import (QWidget, QPushButton, QFrame, QColorDialog,QApplication)
    from PyQt5.QtGui import QColor
    import sys
    
    class Example(QWidget):
        def __init__(self):
            super().__init__()
    
            self.initUI()
    
        def initUI(self):
    
            col = QColor(0,0,0)
    
            self.btn = QPushButton('Dialog',self)
            self.btn.move(20,20)
    
            self.btn.clicked.connect(self.showDialog)
    
            self.frm = QFrame(self)
            self.frm.setStyleSheet("QWidget { background-color : %s}" % col.name())
            self.frm.setGeometry(130,22,100,100)
    
            self.setGeometry(300,300,250,180)
            self.setWindowTitle('Color dialog')
            self.show()
    
    
        def showDialog(self):
    
            col = QColorDialog.getColor()
    
            if col.isValid():
                self.frm.setStyleSheet("QWidget { background-color: %s }"
                    % col.name())
    
    
    if __name__ == '__main__':
    
        app = QApplication(sys.argv)
        ex = Example()
        sys.exit(app.exec_())
    

    这个例子包含一个按钮和一个QFrame控件.最开始控件颜色置为黑色,点击按钮之后弹出选择颜色值的对话框,我们点击颜色值,确定之后,就改变了控件的背景颜色.

    col = QColor(0, 0, 0)   #置为黑色
    
    col = QColorDialog.getColor() #弹出选择颜色值的对话框
    
    
    if col.isValid():
        self.frm.setStyleSheet("QWidget { background-color: %s }"
            % col.name())
    

    我们检查一下颜色是否有效。如果单击取消按钮,则没有返回有效颜色。如果颜色是有效的,我们使用样式表改变背景色。

    运行效果图:

    image.png

    相关文章

      网友评论

        本文标题:PyQt5学习记录(五): QColorDialog

        本文链接:https://www.haomeiwen.com/subject/xmkgpxtx.html