Pycharm pyuic5实现将ui文件转为py文件,让UI界面成功显示


Posted in Python onApril 08, 2020

当pyuic5将ui文件转换成py文件的时候,此时会自动生成一个只包含Ui_MainWindow的类,类之外没有可以执行的代码,当你执行这个代码的时候,不会报错,但是什么也不会发生。如果要显示UI界面的话,可以在生成的py代码中添加几行代码就可以啦

生成的.py文件自动引入了PyQt5库中的几个大类:QtCore, QtGui, QtWidgets等;(你用到什么类,他就自动生成什么类)也可以输入from PyQt5.QtWidgets import *,这样就会把所有的类都导入啦

1、在最开头引入sys库

#from PyQt5 import QtCore, QtGui, QtWidgets
import sys

2、我们需要在class之外(添加到最后面)添加一些代码,将类实例化,并且运行这个实例:

if __name__ == "__main__":
  app = QtWidgets.QApplication(sys.argv) # 创建一个QApplication,也就是你要开发的软件app
  MainWindow = QtWidgets.QMainWindow()  # 创建一个QMainWindow,用来装载你需要的各种组件、控件
  ui = Ui_MainWindow()          # ui是Ui_MainWindow()类的实例化对象
  ui.setupUi(MainWindow)         # 执行类中的setupUi方法,方法的参数是第二步中创建的QMainWindow
  MainWindow.show()            # 执行QMainWindow的show()方法,显示这个QMainWindow
  sys.exit(app.exec_())          # 使用exit()或者点击关闭按钮退出QApplicat

3、此时运行该程序,界面就会显示出来啦!

补充知识:pycharm中如何将ui文件转化为py文件,以及Pycharm和QtDesigner的集合

1.配置PyCharm

File --> Settings --> External Tools-->单击“ADD”(加号图标) -->弹出对话框,做如下设置

Pycharm pyuic5实现将ui文件转为py文件,让UI界面成功显示

1).设置“Qt Designer” -- 这个主要用来设计 Qt界面

在Qt Designer的设置中,Program选择PyQt安装目录中 designer.exe 的路径

Work directory 使用变量 $ProjectFileDir$(点击后面的 Insert macro按钮可以不用输入双击上屏)

2.设置“PyUIC” --这个主要是用来将 Qt界面转换成 py代码

在PyUIC的设置中,其他的都差不多,Program写入Python的地址,Parameters写入

代码如下:

H:\Python2.7\Lib\site-packages\PyQt4\uic\pyuic.py$FileName$ -o $FileNameWithoutExtension$.py

把上面的Python路径修改成自己的即可!

Work directory 使用变量 $ProjectFileDir$

Pycharm pyuic5实现将ui文件转为py文件,让UI界面成功显示

然后我们就可以看到这些工具了。

Pycharm pyuic5实现将ui文件转为py文件,让UI界面成功显示

通过点击QtDesigner,我们就可以在PyCharm中调出QtDesigner,

另外我们也可以选择自己需要转换的ui文件,然后点击Pyuic,就可以生成对应的py文件了

以上这篇Pycharm pyuic5实现将ui文件转为py文件,让UI界面成功显示就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python最长公共子串算法实例
Mar 07 Python
使用pyecharts无法import Bar的解决方案
Apr 23 Python
深入理解python中函数传递参数是值传递还是引用传递
Nov 07 Python
Python DataFrame.groupby()聚合函数,分组级运算
Sep 18 Python
python频繁写入文件时提速的方法
Jun 26 Python
解决pycharm下os.system执行命令返回有中文乱码的问题
Jul 07 Python
关于python字符串方法分类详解
Aug 20 Python
python3.7 openpyxl 删除指定一列或者一行的代码
Oct 08 Python
python处理excel绘制雷达图
Oct 18 Python
Django模板标签{% for %}循环,获取制定条数据实例
May 14 Python
Python第三方包PrettyTable安装及用法解析
Jul 08 Python
Django前后端分离csrf token获取方式
Dec 25 Python
pycharm的python_stubs问题
Apr 08 #Python
Pycharm中安装Pygal并使用Pygal模拟掷骰子(推荐)
Apr 08 #Python
解决pycharm下pyuic工具使用的问题
Apr 08 #Python
解决pyqt5异常退出无提示信息的问题
Apr 08 #Python
python由已知数组快速生成新数组的方法
Apr 08 #Python
TensorFlow2.X使用图片制作简单的数据集训练模型
Apr 08 #Python
解决python ThreadPoolExecutor 线程池中的异常捕获问题
Apr 08 #Python
You might like
php你的验证码安全码?
2007/01/02 PHP
PHP实现字符串翻转功能的方法【递归与循环算法】
2017/11/03 PHP
基于jquery的direction图片渐变动画效果
2010/05/24 Javascript
javascript最常用与实用的创建类的代码
2010/08/12 Javascript
jquery ajax请求实例深入解析
2012/11/26 Javascript
jquery怎样实现ajax联动框(二)
2013/03/08 Javascript
兼容FF和IE的动态table示例自写
2013/10/21 Javascript
window.print打印指定div实例代码
2013/12/13 Javascript
IE与FireFox的JavaScript兼容问题解决办法
2013/12/31 Javascript
做web开发 先学JavaScript
2014/12/12 Javascript
解决ueditor jquery javascript 取值问题
2014/12/30 Javascript
纯javascript实现四方向文本无缝滚动效果
2015/06/16 Javascript
在JavaScript应用中使用RequireJS来实现延迟加载
2015/07/01 Javascript
纯javascript响应式树形菜单效果
2015/11/10 Javascript
Angular2下使用pdf插件的方法详解
2017/04/29 Javascript
Vue 多层组件嵌套二种实现方式(测试实例)
2017/09/08 Javascript
微信小程序适配iphoneX的实现方法
2018/09/18 Javascript
vue同步父子组件和异步父子组件的生命周期顺序问题
2018/10/07 Javascript
使用vue-router切换页面时,获取上一页url以及当前页面url的方法
2019/05/06 Javascript
Node.js学习之内置模块fs用法示例
2020/01/22 Javascript
jQuery 动态粒子效果示例代码
2020/07/07 jQuery
VUE动态生成word的实现
2020/07/26 Javascript
解析Python中的生成器及其与迭代器的差异
2016/06/20 Python
Python实现求笛卡尔乘积的方法
2017/09/16 Python
Python+Django搭建自己的blog网站
2018/03/13 Python
python中datetime模块中strftime/strptime函数的使用
2018/07/03 Python
Python实现某论坛自动签到功能
2019/08/20 Python
Python基于smtplib协议实现发送邮件
2020/06/03 Python
keras打印loss对权重的导数方式
2020/06/10 Python
用python批量移动文件
2021/01/14 Python
canvas实现滑动验证的实现示例
2020/08/11 HTML / CSS
大学生怎样写好自荐信
2014/02/25 职场文书
就业协议书
2014/09/12 职场文书
2014党员学习习主席讲话思想汇报
2014/09/15 职场文书
2014年幼儿园教研工作总结
2014/12/04 职场文书
导游词之蓬莱长岛
2019/12/17 职场文书