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

  • 相关阅读:
    vector<vector<int>> 判断三个数为一组是否重复
    数位dp——hdu2089不要62
    nyoj1099 四点坐标判断正方形
    构造回文——最长公共子序列问题 java
    nyoj08 一种排序
    记录一个protobuf枚举类型引发问题的分析和思考
    记录一下996.icu
    Android N requires the IDE to be running with Java 1.8 or later
    使用fresco后引发的关于造轮子的思考
    使用了一段时间的instant run 记录一下遇到的问题
  • 原文地址:https://www.cnblogs.com/hushaojun/p/4435706.html
Copyright © 2011-2022 走看看