• ZetCode PyQt4 tutorial Dialogs


    #!/usr/bin/python
    # -*- coding: utf-8 -*-
    
    """
    ZetCode PyQt4 tutorial 
    
    In this example, we receive data from
    a QtGui.QInputDialog dialog. 
    
    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):      
    
            self.btn = QtGui.QPushButton('Dialog', self)
            self.btn.move(20, 20)
            self.btn.clicked.connect(self.showDialog)
            
            self.le = QtGui.QLineEdit(self)
            self.le.move(130, 22)
            
            self.setGeometry(300, 300, 290, 150)
            self.setWindowTitle('Input dialog')
            self.show()
            
        def showDialog(self):
            
            # This line displays the input dialog. The first string is a dialog title, the second one is a message within the dialog. The dialog returns the entered text and a boolean value. If we click the Ok button, the boolean value is true.
            text, ok = QtGui.QInputDialog.getText(self, 'Input Dialog', 
                'Enter your name:')
            
            # The text that we have received from the dialog is set to the line edit widget.
            if ok:
                self.le.setText(str(text))
            
    def main():
        
        app = QtGui.QApplication(sys.argv)
        ex = Example()
        sys.exit(app.exec_())
    
    
    if __name__ == '__main__':
        main()
    
    --------------------------------------------------------------------------------
    
    #!/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):      
    
            # This is an initial colour of the QtGui.QFrame background.
            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):
          
            # This line will pop up the QtGui.QColorDialog.
            col = QtGui.QColorDialog.getColor()
    
            # 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.
            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()
    
    --------------------------------------------------------------------------------
    
    #!/usr/bin/python
    # -*- coding: utf-8 -*-
    
    """
    ZetCode PyQt4 tutorial 
    
    In this example, we select a font name
    and change the font of a label. 
    
    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):      
    
            vbox = QtGui.QVBoxLayout()
    
            btn = QtGui.QPushButton('Dialog', self)
            btn.setSizePolicy(QtGui.QSizePolicy.Fixed,
                QtGui.QSizePolicy.Fixed)
            
            btn.move(20, 20)
    
            vbox.addWidget(btn)
    
            btn.clicked.connect(self.showDialog)
            
            self.lbl = QtGui.QLabel('Knowledge only matters', self)
            self.lbl.move(130, 20)
    
            vbox.addWidget(self.lbl)
            self.setLayout(vbox)          
            
            self.setGeometry(300, 300, 250, 180)
            self.setWindowTitle('Font dialog')
            self.show()
            
        def showDialog(self):
    
            # Here we pop up the font dialog. The getFont() method returns the font name and the ok parameter. It is equal to True if the user clicked OK; otherwise it is False.
            font, ok = QtGui.QFontDialog.getFont()
    
            # If we clicked ok, the font of the label would be changed.
            if ok:
                self.lbl.setFont(font)
            
    def main():
        
        app = QtGui.QApplication(sys.argv)
        ex = Example()
        sys.exit(app.exec_())
    
    
    if __name__ == '__main__':
        main()
    
    --------------------------------------------------------------------------------
    
    #!/usr/bin/python
    # -*- coding: utf-8 -*-
    
    """
    ZetCode PyQt4 tutorial 
    
    In this example, we select a file with a
    QtGui.QFileDialog and display its contents
    in a QtGui.QTextEdit.
    
    author: Jan Bodnar
    website: zetcode.com 
    last edited: October 2011
    """
    
    import sys
    from PyQt4 import QtGui
    
    
    #The example is based on the QtGui.QMainWindow widget because we centrally set the text edit widget.
    class Example(QtGui.QMainWindow):
        
        def __init__(self):
            super(Example, self).__init__()
            
            self.initUI()
            
        def initUI(self):      
    
            self.textEdit = QtGui.QTextEdit()
            self.setCentralWidget(self.textEdit)
            self.statusBar()
    
            openFile = QtGui.QAction(QtGui.QIcon('open.png'), 'Open', self)
            openFile.setShortcut('Ctrl+O')
            openFile.setStatusTip('Open new File')
            openFile.triggered.connect(self.showDialog)
    
            menubar = self.menuBar()
            fileMenu = menubar.addMenu('&File')
            fileMenu.addAction(openFile)       
            
            self.setGeometry(300, 300, 350, 300)
            self.setWindowTitle('File dialog')
            self.show()
            
        def showDialog(self):
    
            # We pop up the QtGui.QFileDialog. The first string in the getOpenFileName() method is the caption. The second string specifies the dialog working directory. By default, the file filter is set to All files (*).
            fname = QtGui.QFileDialog.getOpenFileName(self, 'Open file', 
                    '/home')
            
            # The selected file name is read and the contents of the file are set to the text edit widget.
            f = open(fname, 'r')
            
            with f:        
                data = f.read()
                self.textEdit.setText(data) 
                                    
            
    def main():
        
        app = QtGui.QApplication(sys.argv)
        ex = Example()
        sys.exit(app.exec_())
    
    
    if __name__ == '__main__':
        main()
  • 相关阅读:
    Pytest单元测试框架之FixTure内置临时文件tmpdir操作
    Python+Request库+第三方平台实现验证码识别示例
    Pytest单元测试框架之parametrize参数化
    Pytest单元测试框架之setup/teardown模块示例操作
    mysql匿名账户登录导致的"ERROR 1044 (42000): Access denied for user ''@'localhost' to database 'mysql'"错误
    求全排列
    (转载)你真的会写单例模式吗——Java实现
    《大话设计模式》之--第14章 老板回来,我不知道----观察者模式
    关于java Integer大小比较的问题
    Java char[] 数组转为 String 的两种方式
  • 原文地址:https://www.cnblogs.com/zengjfgit/p/4851649.html
Copyright © 2020-2023  润新知