下面的程序会显示一个简单的窗口,可以最大化,最小化,调整大小以及关闭它。程序的风格是面向过程式编程。
import sysfrom PyQt5.QtWidgets import QApplication, QWidget app = QApplication(sys.argv)w = QWidget()w.resize(300, 150)w.move(500, 300)w.setWindowTitle('The 1st sample')w.show()sys.exit(app.exec_())
显示的效果如下:
![ae3235537971f30688c9be75fdd632b8.png](https://img-blog.csdnimg.cn/img_convert/ae3235537971f30688c9be75fdd632b8.png)
import sysfrom PyQt5.QtWidgets import QApplication, QWidget
这两句导入了此程序必需的库文件。一些基本的组件(Widget) 都属于PQt5.QtWidgets 模块。什么是组件呢?它指的是标签、按钮、下拉菜单、对话框、主窗口,和其它那些用户可以在屏幕上看到,且大多数可以交互的那些元素。
app = QApplication(sys.argv)
每个 PyQt 程序必须有一个 Application 对象。sys.argv 是命令行参数列表,列表第一个元素是本程序的路径。这一句每个 PyQt 程序都必须有。
w = QWidget()
Qwidget 组件是 PyQt 中所有用户界面对象的基类。如果参数列表中未指定父组件,也不属于任何布局(Layout,后面的文章会介绍),则它就是一个顶级窗口。
w.resize(300,150)
调整控件,宽300像素,高150像素。
w.move(500, 300)
将控件的位置(以左上角为基准点)移动到屏幕位置 x=500,y=300 处(屏幕左上角处 x=0,y=0)。
w.setWindowTitle('The 1st sample')
设置窗口的标题。标题显示在标题栏。
w.show()
将组件显示在屏幕上。
sys.exit(app.exec_())
调用 app.exec_() 会开始执行 QApplication 对象的事件循环。应用程序的事件循环会持续不断的查看是否还有需要执行的事件(如鼠标事件,键盘事件,窗口重绘事件等等),如果有,就执行该事件,或将其传递给与事件相关联的处理函数或者方法;如果没有,就继续等待。当所有窗口被销毁,或者我们调用 exit() 就结束了事件循环。sys.exit() 会干净地结束掉该 GUI 应用程序。它会关闭所有已打开的窗口,释放所有占用的资源,然后退出程序。注意, exec_() 方法有一个下划线。因为 exec 是python 关键字,所以这里加个下划线是为了避免冲突。
后面的文章,代码的解释如果足够简单就会放在到程序的注释部分。