赞
踩
在上一篇博客Python界面库-PyQt5初探中留了一个坑,那就是如何利用Qt的Designer设计出的UI文件。本篇博客就来研究这个问题。请注意:这里只是讲如何使用Ui文件,而不会讲如何设计Ui文件,如何需要学习如何设计Ui的话,请移步到Qt5 GUI编程之类的话题去。
使用过Qt,尤其是在visual studio中使用过Qt的应该知道,在编码的过程中Qt会对一些特殊文件进行处理,具体如下图所示:
源码文件处理。Qt处理的源码文件是有要求的,即对应的需要定义Qt宏Q_OBJECT,这个就是元对象系统moc发挥作用的地方,Qt的信号槽机制的处理就是在moc中进行的,因为如果没有加Q_OBJECT,那么就不能进行moc处理,也就无法使用信号槽机制。
在Python中,我们也可以使用这个流程来完成Qt UI文件的处理。来看实例。
这里设计了一个简单的登陆窗口,文件名为Login.ui,如图:
在安装的PyQt5中有uic工具,在%PythonRoot%Python36/Scripts/pyuic5.exe。在命令行中输入如下命令
pyuic5.exe -o ui_Login.py Login.ui
处理完成后会在同目录下生成问价ui_Login.py。这个文件和上面说到的c++头文件ui_xxx.h是一致的,只不过是Python的版本而已。
文件Login.py如下:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。