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

  • 相关阅读:
    jQueryUI的widget的Hello World
    jquery.fileupload源码解读笔记
    起始路由改成分区(Areas)的RouteConfig.cs配置方法
    C++/CLI
    WM_COPYDATA 进程间通信
    C# 托管内存与非托管内存之间的转换
    迟延(Lazy)加载导出部件(Export Part)与元数据(Metadata)
    Bitmap(Type, String) 图片路径
    C# GetManifestResourceStream获取资源为null
    C#可扩展编程之MEF学习笔记(二):MEF的导出(Export)和导入(Import)
  • 原文地址:https://www.cnblogs.com/hushaojun/p/4435706.html
Copyright © 2011-2022 走看看