一. 前言
PyQt用了也很久了,零零散散总是不成体系。掌握知识的最好方法是可以传授给他人,因为传授知识就需要总结,需要高屋建瓴的去看待知识点。编程嘛,都是从HelloWorld开始的,那我的学习笔记也不免俗,千里之行,始于此篇。
二. 准备工作
电脑一台
安装 Python3.5 + Qt 5.5.1 + PyQt5 + Eric6
三. 开始编写代码
打开Eric6,点击菜单“项目”——>“新建”,输入项目名称、项目文件夹,作者、邮件和描述看着填,然后确定生成新项目。
切换左侧边栏源代码窗口至窗体,右键单击空白处“新建窗体”,就选默认的对话框然后OK。
Qt Designer自动打开,修改设计师右侧边栏对话框的属性,对象名称——>helloDlg,窗体名称——>Hello PyQt
左侧边栏选择控件Label,拖拽到窗体界面上,更改Label文本为”Hello World!“ ,保存后关闭设计师窗口。
回到Eric6界面,右键单击窗体文件名,编译窗体,切换到源代码窗口,可以看到新生成一个Ui_hello.py的python文件。这个文件就是我想要生成程序界面对话框的类,也就是把对话框看成一个对象,要用到这个对话框时将类实例化就好了。
这个新生成的Ui_hello.py文件中已经自动包含if __name__ == "__main__",也就是说直接运行该脚本时,if条件成立,对话框实例化,就可以看到我们的Hello World!了。但通常做法是我们会在另外的脚本中导入这个模块并且实例化,所以新建一个脚本文件hello_main.py。
接下来的工作就是输入代码啦~~
# -*- coding: utf-8 -*-
from PyQt5.QtWidgets import QDialog, QApplication
from Ui_hello import Ui_helloDlg
import sys
class helloDlg(QDialog, Ui_helloDlg):
def __init__(self):
super(helloDlg, self).__init__()
self.setupUi(self)
if __name__ == "__main__":
app = QApplication(sys.argv)
dlg = helloDlg()
dlg.show()
sys.exit(app.exec_())
8. 直接执行hello_main.py脚本,就可以看到我们的hello world窗口啦。还记得我们新建项目时弹出的对话框么?我们可以在菜单“项目”——>“属性”重新打开此对话框,将主脚本定义成hello_main.py文件。通过“项目”——>“运行项目”一样可以运行该程序了。
四、后记
第一个程序总是这么简单而又轻松,我们的探索之旅才刚刚开始,下一篇文章将详细解释每一句代码的作用。