• 第一个PyQt程序


    这个程序虽然小,具备pyqt程序的皱型,可以作为一个模板使用了

    #!/usr/bin/python3
    # -*- coding: utf-8 -*-
    
    import sys
    from PyQt5.QtWidgets import QApplication, QWidget
    
    class Example(QWidget):
        
        def __init__(self):
            super().__init__()
            
            self.initUI()
            
            
        def initUI(self):
            self.setGeometry(300, 300, 300, 220)  
            self.setWindowTitle('Simple') 
            self.show()
            
            
    if __name__ == '__main__':
        app = QApplication(sys.argv)
        ex = Example()
        sys.exit(app.exec_())  

    先看运行效果:

    import sys
    from PyQt5.QtWidgets import QApplication, QWidget

    两个必要的导入

    app = QApplication(sys.argv)

    每一个pyqt程序必须创建一个application对象,sys.argv是命令行参数,可以通过命令行传参,来定制我们的程序

    class Example(QWidget):
        
        def __init__(self):
            super().__init__()

    我们创建一个Example类继承QWidget类,PyQt5里面QWidget是所有用户界面对象的基类,所有和用户界面相关的类都必须继承

    QWidget类,比如QMainWindow和QDialog等内置的窗口类都是继承自QWidget的,这里我们新建一个Example类同样要继承QWidget类,

    使用super.__init__() 调用QWidget的构造函数

    self.setGeometry(300, 300, 300, 220)  
    self.setWindowTitle('Simple') 

     setGeometry方法控制窗口的大小和位置,setWindowTitle设置窗口标题

    self.show()

    show方法将窗口显示到屏幕上

    sys.exit(app.exec_()) 

    app.exec_() 进入程序主循环,事件处理开始。主循环从窗口系统接收事件并把事件发送给指定窗口,当调用app.exit()或者

    程序因为各种原因被破坏后,使用sys.exit()可以优雅的关闭程序,并通知系统程序结束

    ===============================================================

    在上面代码基础上增加点东西
    现在我要在这个窗口上添加一个按钮,在添加一个输入框

    #!/usr/bin/python3
    # -*- coding: utf-8 -*-
    
    import sys
    from PyQt5.QtWidgets import (QApplication, QWidget,QPushButton,
        QLineEdit)
    
    class Example(QWidget):
        
        def __init__(self):
            super().__init__()
            
            self.initUI()
            
            
        def initUI(self):
            self.setGeometry(300, 300, 300, 220)  
            self.setWindowTitle('Simple') 
            btn = QPushButton("button",self)
            line = QLineEdit(self)
            line.move(100,100)
            self.show()
            
            
    if __name__ == '__main__':
        app = QApplication(sys.argv)
        ex = Example()
        sys.exit(app.exec_())  

    首先在import那句添加了两个相关类,在initUI函数里面添加了几行代码,一看就明白了 不用多说

    现在你可能有这样的疑问,如果我要添加一个单选框,复选框,时间选择器等等,这些东西我怎么知道在那个模块呢?

    都叫什么名字呢?  第一个问题在我的上一篇博文中就写了,常见功能对应在那些模块中,大概也就知道了和窗口界面有关的都在QWidget模块下面

    比如现在你知道复选框在QWidget模块中 ,那你就可以打开qt文档 找到QWidget模块,一眼望下去你就会找到他,根据类名就能大概猜到功能

    找到在哪里就好办了,你可以看看这个类提供那些方法,比如上面的按钮我没有设置他的位置,下面的输入框我用了move方法,你还可以设置输入框的宽高不是,

    每一个类都提供了很多方法,很多不同的类具有部分相同的方法,用到的时候就去查文档,多查几次常用的就记住了

    最简单的方法就是打开 Qt Creator

    虽然是c++的,但是用法和python都是一样的,只是把c++的语法改成python方式来写就可以了,

  • 相关阅读:
    word编号变黑块
    恢复未保存的word
    协方差分析
    SAS字体变大
    可变区组长度--区组随机
    adv and disadv of oncology clinical trial endpoints
    非劣效试验界值确定
    Computer Science
    Compuer Science
    随笔
  • 原文地址:https://www.cnblogs.com/codeAB/p/5016899.html
Copyright © 2020-2023  润新知