开始创建PyQt5项目
- PyQt 项目框架
- 创建一个python项目
- 创建一个QT项目
- 编辑.ui文件
- button按钮增加click槽函数
- 创建批处理文件uic.bat
- 创建myDialog.py文件
- 创建main.py文件
PyQt 项目框架
1、子文件夹QTApp:QT项目所在的文件夹。
2、main.py:创建应用程序和窗体对象的实例,显示窗体并运行的主程序。
3、myDialog.ui:与窗体相对应的业务逻辑类。
4、ui_Dialog.py:用pyuic5对文件Dialog.ui编译转换得到的python程序文件。
创建一个python项目
创建一个QT项目
在这里创建了一个项目,而不是像第一节中创建一个Qt designer文件,因为只有在Qt项目中包含.h和.app文件,后续才能看到控件的信号函数和槽函数,这个后面会详细介绍。
编辑.ui文件
双击打开.ui文件。
在界面添加两个Push Button控件,控件的属性如下表:
objectname | 类名称 | 属性设置 |
btn_train | QPushButton | Text = “train” |
btn_test | QPushButton | Text = “train” |
button按钮增加click槽函数
在PushButton控件上右键,选择“转到槽”,即“Go to slot …”。选择clicked()信号。
然后在QT项目中的dialog.cpp文件夹中自动生成一个C++的槽函数框架,在这里我们不需要写任何C++代码,我们只需要使用自动生成的槽函数的名称,这会在myDialog.py文件中使用到它们。
创建批处理文件uic.bat
批处理文件调用pyuic5工具将dialog.ui文件编译为Python程序文件ui_dialog.py。pyuic5工具是集成在了PyQt5中,不用在下载。rem表示注释
echo off
rem 用pyuic5编译子文件夹下QTApp下的Dialog.ui文件,生成的.py文件在当前目录下
pyuic5 -o ui_Dialog.py .\QtApp\Dialog.ui
创建myDialog.py文件
在Spyder中创建一个myDialog.py文件,包含对窗体进行业务操作的类。
在该文件中创建一个与QT中生成的槽函数名称同名的一个方法:on_btn_train_clicked(self)。
from PyQt5.QtWidgets import QDialog
from ui_Dialog import Ui_Dialog
class QMyDialog(QDialog):
def __init__(self,parent=None):
super().__init__(parent)
self.ui = Ui_Dialog() #创建UI对象
self.ui.setupUi(self) #构造UI
def on_btn_train_clicked(self): #按键的click事件
"""
按键click实现的功能
"
创建main.py文件
在Spyder中创建一个main.py文件,创建应用程序和窗体对象的实例,显示窗体并运行。
import sys
from PyQt5.QtWidgets import QApplication
from myDialog import QMyDialog
app = QApplication(sys.argv) #创建GUI应用程序
mainform = QMyDialog() #创建主窗体
mainform.show() #显示主窗体
sys.exit(app.exec_())