在使用PyQT做用户界面时, 我们可以先用QT Designer来创建UI框架,然后用pyuic4脚本来将.ui文件转换成.py文件,这样可以节省大量配置用户界面的繁琐工作。
一般大家都只会记住一条命令,就是:
pyuic4 -x project.ui -o project.py
这就是把用XML描述的.ui文件,转换成.py文件,我们就可以直接
python project.py
来得到用户界面了,然后再加些其它代码即可。
下面就是pyuic4所支持的所有参数。
-p, --preview
预览用户界面。
-o, --output
输出产生的代码到指定文件,而不是console终端上。
-x, --execute
产生额外的代码来测试和显示类。
-d, --debug
显示调试信息。
-i, --indent N
设置缩进的空格数N,N为0时表示使用tab,缺省N为4,即4个空格。
-w, --pyqt3-wrapper
产生PyQt v3 风格的代码格式。
--from-imports
控制生成的python代码的一个选项,让产生代码中的导入文件是相对于当前目录。
写了个PyQt4的程序,用desiger设计了个界面,使用了Qt的rcc系统。于是研究了一下pyrcc4和pyuic4的使用方法,其实都很简单,pyrcc4 -o ui_form.py form.ui,pyuic4同样的用法。由于用到了好几个ui,一行行的敲着挺麻烦,于是边看python帮助写了个辅助的生成脚本:
import os
for root, dirs, files in os.walk('.'):
for file in files:
if file.endswith('.ui'):
os.system('pyuic4 -o ui_%s.py %s' % (file.rsplit('.', 1)[0], file))
elif file.endswith('.qrc'):
os.system('pyrcc4 -o %s_rc.py %s' % (file.rsplit('.', 1)[0], file))