PyQt5学习笔记(一)

来创建第一个PyQt应用吧!

本文由Cescfangs译自ZetCode pyqt5系列教程并作适当修改。 之前用C++做过Qt的应用,用过一次就喜欢上了Qt,但是C++相对较难,也比较繁琐,在学习Python之后,对于PyQt开发更加感兴趣。话不多说,第一篇介绍如何创建一个简单的窗口。

先上源代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import sys
from PyQt5.QtWidgets import QApplication, QWidget
if __name__ == '__main__':
app = QApplication(sys.argv)
w = QWidget()
w.resize(250, 150)
w.move(300, 300)
w.setWindowTitle('Simple')
w.show()
sys.exit(app.exec_())

代码解析:

1
2
import sys
from PyQt5.QtWidgets import QApplication, QWidget

先导入所需要的模块,包括sys,PyQt5.QtWidgetsQApplicationQWidget模块。

1
app = QApplication(sys.argv)

每一个PyQt5项目都需要创建一个QApplication对象。sys.argv则提供了命令行的一些参数,这样Python脚本就能从Shell运行,这是我们控制脚本开始运行的方式。

1
w = QWidget()

QWidget是所有界面的基类,这里采用默认的构造函数(无父对象,没有父对象的widget也就是window)。

1
w.resize(250, 150)

resize函数重设了窗口的大小为250px宽,150px高。

1
w.move(300, 300)

move函数把窗口移动到了x=300,y=300d的坐标位置。

1
w.setWindowTitle('Simple')

设置了窗口的标题,会在窗口的标题栏中央显示。

1
w.show()

show函数让Simple这个窗口在屏幕中显示出来,这个窗口是先在内存中产生,然后再显示在屏幕中的。

1
sys.exit(app.exec_())

在开头我们设置了这个应用的主函数,事件由此开始产生,主函数从窗口系统接受事件并传递给widget应用,而当我们使用exit()或者关闭了widget时,主函数就终止。sys.exit()确保干净利落不留痕迹地退出。 注意到这里的代码exec_(),exec后面还有个’_’,这是因为execPython的关键字,为了避免冲突用了一个下短横。最后可以看到一个简单的窗口界面:

需要说明的是,Qt自带有QtDesigner设计交互界面,相比手写界面代码是一种更直观的方式,在以后的学习笔记里也会介绍界面与代码分开的方法,但是作为初学,手写一些简单的界面是有助于理解Qt的。

欢迎转载,请注明出处。(๑¯∀¯๑)