快活林资源网 Design By www.csstdc.com

PyQt5之如何将.ui文件转换为.py文件

一、通过Eric6把.ui文件转换为.py文件

1、首先打开Eric6编辑器,切换到“窗体”选项卡,然后选中需要转换的.ui文件,单击鼠标右键,选择“编辑窗体”就可以了。(具体步骤如下图)

PyQt5如何将.ui文件转换为.py文件的实例代码

2、如果找不到自己需要转换的.ui文件,则可以找到“project",选择”New“新建一个工程,创建好之后就可以找到该.ui文件了,找到之后按照上面的步骤就可以了。(具体步骤如下图)

PyQt5如何将.ui文件转换为.py文件的实例代码

二、通过命令行把.ui文件转换为.py文件

1、通过PyQt5提供的命令行工具pyuic5可以轻松实现,打开cmd,将路径切换到你保存.ui文件的路径位置,输入以下命令:文件名为你需要转换的.ui文件的名字。

pyuic5 -o 文件名.py 文件名.ui

执行完之后,再输入dir,可查看是否转换成功,具体详情如下图:

PyQt5如何将.ui文件转换为.py文件的实例代码

2、如果输入pyuic5命令没有得到正确提示,而是提示如下:

'pyuic5' 不是内部或外部命令,也不是可运行的程序或批处理文件。

则可能是由于Pytnon3的环境配置出错导致的,或者PyQt5没有配置好,那就需要重新配置或者找到哪些配置出现问题再解决。

关于pyuic5命令的详细介绍,可以参照官方网站:https://www.riverbankcomputing.com/static/Docs/PyQt5/designer.html"color: #ff0000">三、通过Python脚本把.ui文件转换为.py文件

1、这个脚本本质上是用Python代码把上述操作封装起来,如下:

import os
import os.path
#UI文件所在的路径
dir = 'D:\Python--PyQt5--Eric6'
#列出目录下的所有UI文件
def listUiFile():
	list = []
	files = os.listdir(dir)
	for filename in files:
		if os.path.splitext(filename)[1] == '.ui':
			list.append(filename)
	return list
#把扩展名为.ui的文件改成扩展名为.py的文件
def transPyFile(filename):
	return os.path.splitext(filename)[0] + '.py'
#调用系统命令把UI文件转换成Python文件
def runMain():
	list = listUiFile()
	for uifile in list:
		pyfile = transPyFile(uifile)
		cmd = 'pyuic5 -o {pyfile} {uifile}'.format(pyfile=pyfile,uifile=uifile)
		os.system(cmd)
if __name__ == "__main__":
	runMain()

2、新建一个Python文件,运行之后,就可以得到所需要的.py文件。

需要注意的是:转换之后的.py文件的存储位置和你所新建的Python文件的位置一样。

总结

快活林资源网 Design By www.csstdc.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
快活林资源网 Design By www.csstdc.com

P70系列延期,华为新旗舰将在下月发布

3月20日消息,近期博主@数码闲聊站 透露,原定三月份发布的华为新旗舰P70系列延期发布,预计4月份上市。

而博主@定焦数码 爆料,华为的P70系列在定位上已经超过了Mate60,成为了重要的旗舰系列之一。它肩负着重返影像领域顶尖的使命。那么这次P70会带来哪些令人惊艳的创新呢?

根据目前爆料的消息来看,华为P70系列将推出三个版本,其中P70和P70 Pro采用了三角形的摄像头模组设计,而P70 Art则采用了与上一代P60 Art相似的不规则形状设计。这样的外观是否好看见仁见智,但辨识度绝对拉满。