文章目录
First Steps with Qt Designer
- 当前,我们的已经使用Python代码来创建apps,这在很多方面都还是不错,但是随着apps的复杂,再通过编程实现就很冗余和困难,就需要用支持拖拽的QtDesigner来实现。
- 实在pycharm中安装QtDesigner的,相关安装教程链接。
- 主要用到三个工具
- QtDesigner:通过QtDesigner图形化编辑对应图形界面
- PyUIC:将.ui文件转成py文件
- PyRcc:将QtDesigner中使用的图片编译为py文件,再继续使用
Laying out your Main Window
- 点击创建一个MainWindow应用,随便拖进去两个widgets,这里拖进去一个label和一个pushbutton,然后使用。可以看到的centralWidget上的红圈,显示当前的widget中并没有任何布局。
- 右击红圈,选中布局,选择水平布局,即可发现变化。
- 将制作完成应用保存为.ui文件
- .ui文件是以XML的格式存在的,为了在python中使用这个UI文件,我们有两种选择方式
- 直接将ui文件导入到一个类中,使用.loadUI()方法
- 使用pyuic5工具,将之转变为python代码
使用生成的.ui文件(Using your generated .ui file)
直接加载对应UI文件(Loading the .ui file directly)
- 使用pyqt5中内嵌uic模块中uic.laodUI()函数实现直接加载.ui文件,只需要指定ui文件的名称加载,就能创建一个pyqt5对象
将UI文件转为Python文件
- 通过控制台的命令行,实现将.ui文件转为.py文件,命令行如下
pyuic5 mainwindow.ui -o MainWindow.py
- 你可以对上述生成的py文件进行修改,然后导入到主程序中,仍旧可以正常使用。主要是通过如下语句导入的
from MainWindow import Ui_MainWindow
- 主程序中创建一个对应的类,这个类是QMainWindow和uic工具生成的类Ui_MainWindow的子类,最后,在init函数中调用setupUi(self),生成对应的界面
总结
- 使用qtdesigner能够很大程度上减少我的工作量,在已经学过了基础教程的情况下,可以使用Qtdesigner设计,并在生成py文件上进行修改。
参考
- PyCharm安装PyQt5及其工具(Qt Designer、PyUIC、PyRcc)详细教程
- First steps with Qt Designer