PyQt5+Qt Designer可视化设计食用方法

0.环境配置

python3.7
pyqt5
pyqt5-tools(for Qt Designer)



1.Qt Designer正确食用方法

Qt Designer将可视化.ui文件转化为XML文件,再由uic工具转化为一个class

常见的使用有c++和python

python:
生成一个Ui_xxx1类,该类具有setupUi方法(方法成员),和在Designer中添加的控件(属性成员)。
使用该类时,通过传递一个xxx1类的实例作为父亲参数,setupUI会将控件成员的父亲设置为该实例(通常为空实例,不容易发生控件布局的冲突),以完成Ui的setup工作。


c++:
内部生成一个Ui::xxx2类,并且在xxx2类中添加一个Ui::xxx2类的私有指针变量ui,Ui::xxx2类中具有XML文件的所有控件成员。
和python类似,Ui::xxx2类中也有setupUi方法,该方法把控件成员的父亲设置为xxx2类的实例。
因为是私有指针,通常在xxx2类的构造函数中使用ui指针访问控件成员。(一个小技巧:把ui指针设置为public,即可在主程序中不受限制访问,灵活性更强,同时要注意在main.cpp中include头文件)


2.python Uic工具(XML转class)

Qt Creator中只有对c++的uic支持,但是我们有pyqt5-tools,使用对应的pyuic5即可。

syntax:
pyuic5 xxx.ui

借助流重定向,可将console输出重定向到文件

syntax:
pyuic5 xxx1.ui > xxx2.py   //xxx2.py is the class file

你可能感兴趣的:(计算机)