Pyqt5将.ui文件转换成.py文件的两种方式

简介: Pyqt5将.ui文件转换成.py文件的两种方式

方法一:通过命令行把.ui文件转换为.py文件


PyQt 5安装成功后,pyuic5命令默认安装在%/python3x/Scripts目录下。我的pyuic5的安装路径是E:python35.Scripts。


如果想将firstMainWin.ui转换成.py文件,输入以下命令即可:


pyuic5 -o firstMainWin.py firstMainwin. ui


注意:如果输入pyuic5命令没有得到正确提示,而是提示“pyuic5不是内部命令或外部命令,也不是可运行的程序或批处理文件”,则是由于 Python3.*环境配置出错导致的.


转换后的结果如下:

2dd18b59cd4e49a99e42453689035826.jpg

方法二:通过Python脚本把.ui文件转换为.py文件


对于对命令行的使用不熟悉或者不太喜欢的同学,这里提供了Python脚本来完成转换的方法,这个脚本本质上是用Python代码把上述方法一的操作封装起来。完整代码如下:


# -*- coding: utf-8 -*-
'''
  ui转换成py的转换工具  
'''
import os 
import os.path 
# UI文件所在的路径 
dir = './'  
# 列出目录下的所有ui文件
def listUiFile(): 
  list = []
  files = os.listdir(dir)  
  for filename in files:  
    #print( dir + os.sep + f  )
    #print(filename)
    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转换成py
def runMain():
  list = listUiFile()
  for uifile in list :
    pyfile = transPyFile(uifile)
    cmd = 'pyuic5 -o {pyfile} {uifile}'.format(pyfile=pyfile,uifile=uifile)  
    #print(cmd)
    os.system(cmd)
###### 程序的主入口   
if __name__ == "__main__":    
  runMain()


使用方法:


只要把tool.py 放在需要转换界面文件的目录下,双击tool.py就可以直接运行即可,其执行效果和直接执行转换命令是一样的。


相关文章
|
前端开发 JavaScript
使用Element-UI中的el-upload实现文件的上传demo(亲测有用)
使用Element-UI中的el-upload实现文件的上传demo(亲测有用)
|
6月前
|
人工智能 数据库
无法将文件“obj\Debug\UI.exe“复制到“bin\Debug\UI.exe“。文件“bin\Debug\UI.exe“正由另一个进程使用,因此该进程无法访问此文件。
无法将文件“obj\Debug\UI.exe“复制到“bin\Debug\UI.exe“。文件“bin\Debug\UI.exe“正由另一个进程使用,因此该进程无法访问此文件。
152 0
|
XML 数据格式 Python
『PyQt5-基础篇』| 05 Qt Designer保存的.ui文件如何生成.py文件?
『PyQt5-基础篇』| 05 Qt Designer保存的.ui文件如何生成.py文件?
156 0
|
C++
解决VS打不开xxx.ui文件,xxx.ui无法打开文件
解决VS打不开xxx.ui文件,xxx.ui无法打开文件
377 0
|
数据采集 API Python
自制简易谷歌翻译器详解(附完整UI界面及代码文件)
自制简易谷歌翻译器详解(附完整UI界面及代码文件)
362 1
Qt:ui文件no member named actionXXX 解决方案
Qt:ui文件no member named actionXXX 解决方案
565 0
|
4天前
|
搜索推荐 Android开发 开发者
探索安卓开发中的自定义视图:打造个性化UI组件
【10月更文挑战第39天】在安卓开发的世界中,自定义视图是实现独特界面设计的关键。本文将引导你理解自定义视图的概念、创建流程,以及如何通过它们增强应用的用户体验。我们将从基础出发,逐步深入,最终让你能够自信地设计和实现专属的UI组件。
|
1月前
|
开发框架 JavaScript 前端开发
鸿蒙NEXT开发声明式UI是咋回事?
【10月更文挑战第15天】鸿蒙NEXT的声明式UI基于ArkTS,提供高效简洁的开发体验。ArkTS扩展了TypeScript,支持声明式UI描述、自定义组件及状态管理。ArkUI框架则提供了丰富的组件、布局计算和动画能力。开发者仅需关注数据变化,UI将自动更新,简化了开发流程。此外,其前后端分层设计与编译时优化确保了高性能运行,利于生态发展。通过组件创建、状态管理和渲染控制等方式,开发者能快速构建高质量的鸿蒙应用。
110 3

相关实验场景

更多