Python之PyQt5 纯代码实现Hello World
创建过程:
- 启动Python自带的编程和交互式环境IDLE,点击“File”-“New File”菜单项,打开文件编辑窗口,在此窗口中输入下面的程序,并保存为“Hello.py"。
- 程序输入完成后,在程序编辑器窗口点击“Run”-“Module”菜单项,或直接按快捷键F5运行。
程序:
hello.py
代码创建一个简单的GUI程序
import sys
from PyQt5 import QtCore,QtGui,QtWidgets
app = QtWidgets.QApplication(sys.argv)
widgetHello = QtWidgets.QWidget()
widgetHello.resize(800,600)
widgetHello.setWindowTitle("Hello World")
LabHello = QtWidgets.QLabel(widgetHello)
LabHello.setText("Hello World")
font = QtGui.QFont()
font.setPointSize(12)
font.setBold(True)
LabHello.setFont(font)
size = LabHello.sizeHint()
LabHello.setGeometry(300,250,size.width(),size.height())
widgetHello.show()
sys.exit(app.exec_())
分析:
- 首先导入了PyQt5 的一些模块,每个模块都包含了一些类
- 使用下面语句创建了一个应用程序
app = QtWidgets.QApplication(sys.argv)
用到了QtWidgets模块中的QApplication类
QApplication是管理GUI应用程序的控制流程和设置的类 - 使用QtWidgets模块中的QWidget类创建了窗体对象widgetHello,然后调用了Resize()函数设置窗体大小,调用setWindowTitle()函数设置窗体标题。
- 使用QtWidgets模块中的Qlabel类创建了一个标签对象LabHello,并指定了父容器widgetHello,以便标签显示在窗体widgetHello上。接着调用函数setText()设置标签的文字,又创建了一个QFont对象用于设置标签的字体,还调用了setGeometry函数设置了标签在窗体上的位置和大小。
- 窗体显示和程序运行。
运行:
总结:
- PyQt5中的类都是以大写字母Q开头命名的,如QWidgets、QApplication、QLabel、QtGui,这样的命名规则很容易将PyQt5的类与其他的类或变量区分开来。
- 本程序只是剖析下代码,毕竟纯代码方式构造UI的方式是比较麻烦的,特别是当窗体上组件比较多、层次比较复杂的时候。Qt提供了可视化的设计工具Qt Designer,以及Qt Creator中内置的UI Designer,可视化设计UI窗体可以提高GUI应用程序开发的效率,关注我的后续吧。
其他:
MU-初学者入门级python编辑器