常用的软件或工具通常由UI界面和处理程序组成,在Qt中构建UI一般有两种方法:
- 手写代码
- 使用Qt Designer
手写代码易读性高但效率没有使用Qt Desigener工具高。
程序可以直接使用python 运行,在windows中运行带有.pyw的python脚本可以免去弹出控制台的麻烦。
第一个应用程序:
import sys
from PySide2 import QtWidgets
app = QtWidgets.QApplication(sys.argv)
hello = QtWidgets.QPushButton("Hello world!")
hello.resize(100, 30)
hello.show()
sys.exit(app.exec_())
运行结果:
QtWidgets.QApplication 用来初始化一个程序,含有一些函数用来访问程序的全局信息,每个应用程序有且只有一个QApplication对象。
使用QPushButton对象定义了一个按钮,设置它的大小后,使用show()方法可以直接显示这个按钮。
在Qt中任何窗口和部件都可以做顶级部件,即使它只是一个按钮。
app.exec_()用来开始执行app的事件循环。
那什么是事件循环呢?
用python代码描述就是:
while True:
event = getNextEvent()
if event:
if event == Terminate:
break
processEvent(event)
当用户与程序交互或发生特定的事情时,就会在PyQt中产生一个事件,并把它加入到事件队列中。事件循环会不断的查找是否有要处理的事件,如果有就执行改事件,或发送给相关联的处理函数或者方法。