zoukankan      html  css  js  c++  java
  • QtGui.QColorDialog

    he QtGui.QColorDialog provides a dialog widget for selecting colour values.

    #!/usr/bin/python
    # -*- coding: utf-8 -*-
    
    """
    ZetCode PyQt4 tutorial 
    
    In this example, we select a colour value
    from the QtGui.QColorDialog and change the background
    colour of a QtGui.QFrame widget. 
    
    author: Jan Bodnar
    website: zetcode.com 
    last edited: October 2011
    """
    
    import sys
    from PyQt4 import QtGui
    
    class Example(QtGui.QWidget):
        
        def __init__(self):
            super(Example, self).__init__()
            
            self.initUI()
            
        def initUI(self):      
    
            col = QtGui.QColor(0, 0, 0) 
    
            self.btn = QtGui.QPushButton('Dialog', self)
            self.btn.move(20, 20)
    
            self.btn.clicked.connect(self.showDialog)
    
            self.frm = QtGui.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 = QtGui.QColorDialog.getColor()
    
            if col.isValid():
                self.frm.setStyleSheet("QWidget { background-color: %s }"
                    % col.name())
            
    def main():
        
        app = QtGui.QApplication(sys.argv)
        ex = Example()
        sys.exit(app.exec_())
    
    
    if __name__ == '__main__':
        main()
    

    The application example shows a push button and a QtGui.QFrame. The widget background is set to black colour. Using the QtGui.QColorDialog, we can change its background.

    col = QtGui.QColor(0, 0, 0) 
    

    This is an initial colour of the QtGui.QFrame background.

    col = QtGui.QColorDialog.getColor()
    

    This line will pop up the QtGui.QColorDialog.

    if col.isValid():
        self.frm.setStyleSheet("QWidget { background-color: %s }"
            % col.name())
    

    We check if the colour is valid. If we click on the Cancel button, no valid colour is returned. If the colour is valid, we change the background colour using style sheets.

    Color dialogFigure: Color dialog

  • 相关阅读:
    vsftpd的主动模式与被动模式
    Linux环境下vsftpd参数配置
    CentOS下的网络配置文件说明
    第一篇博客,随笔留念
    asp.net xml 增删改操作
    asp.net json 与xml 的基础事例
    linq 之 Distinct的使用
    【P2015】二叉苹果树(树状DP)
    【P2016】战略游戏(贪心||树状DP)
    【P2774】方格取数问题(贪心+最大流,洛谷)
  • 原文地址:https://www.cnblogs.com/hushaojun/p/4435706.html
Copyright © 2011-2022 走看看