公众号:uncle39py

V1

2023/04/20阅读:23主题:默认主题

10.PyQt初识及代码框架

1.from PyQt5.Qt import *

导入pyqt的所有类,好处在于不用遇到一个控件导入一个,坏处在于所有类都导入到了内存中占用内存

2.QObject.__subclasses__() QWidget.__subclasses__()

查询某一个类的所有子类,pyqt的学习最上层的父类QObject开始,从父类到子类的顺序学习,因为各个控件有共性和特性,共性都是在父类中实现的.

以下为查询所有类的子类及子类的所有子类的方法

3.面向过程的最小代码

from PyQt5.Qt import *
import sys

app = QApplication(sys.argv)

window = QWidget()
window.resize(300,300)
window.setWindowTitle("窗口标题")
window.show()

sys.exit(app.exec_())

基本的代码结构

# 1.导入需要的包和模块
from PyQt5.Qt import *
import sys

# 2.创建一个应用程序对象
app = QApplication(sys.argv)
# sys.argv在通过命令行执行程序时(python xxx.py 参数),可以接收到参数执行不同的逻辑
# 可以通过app.arguments()和qApp.arguments()来获得命令行参数


# 3.控件的操作


# 4.app.exec_()进入到消息循环(类似于while True),不断监测用户的交互信息并做出处理
sys.exit(app.exec_())
# sys.exit()用于将程序的退出状态(是正常退出还是错误退出,错误码是多少)上传给整个程序系统

控件的操作

后期只要在上面的3的位置填充控件的操作即可

#3.控件的操作

#3.1创建控件
window = QWidget() #空白窗口

#3.2设置控制(大小,位置,样式,事件,信号的处理等)
window.setWindowTitle("窗口标题")
window.resize(400,400)

window.show() #3.3展示控件

#1.当一个控件是顶层控件的时候,程序会默认给控件添加一个标题栏,让用户可以最小最大关闭.
#2.顶层控件默认是不展示的,需要手动show()

4.面向对象结构的最小代码

from PyQt5.Qt import *

class Window(QWidget):
    def __init__(self):
        super().__init__()  # 调用父类的init方法,完成父类做为窗口组件该做的事
        self.setWindowTitle("窗口标题")  # self是外部的Window类的每一个具体对象
        self.resize(300,300)
        self.setup_ui()
        self.show()

    def setup_ui(self):
        pass  # 此处专门写控件的操作

# 上面封装的类可以专门放在一个py文件中,就可以实现复用
if __name__ == '__main__':
    import sys
    app = QApplication(sys.argv)
    window = Window()
    sys.exit(app.exec_())

分类:

后端

标签:

后端

作者介绍

公众号:uncle39py
V1