Python安装PySide2模块后使用Qt designer进行开发所遇到的问题。

1.Qt designer 打开时可能会遇到类似于这样的错误,还有就是在程序中动态加在.ui文件后运行也可能会出现这样问题,以及将发开的程序打包成.exe文件后独立运行时也可能会出现这样的问题。网上的解决方案主要是两个,一个是把plugins文件夹下的platforms文件复制到与.exe同级的路径下。这个来说不能根本解决问题所以主要记录一下第二种方案。

首先,是在代码的最开始添加上这段代码,测试一下是否可以成功运行,如果可以的话进入第下步。

#为了解决运行报错的问题。
import os
import PySide2
dirname = os.path.dirname(PySide2.__file__)
plugin_path = os.path.join(dirname, 'plugins', 'platforms')
os.environ['QT_QPA_PLATFORM_PLUGIN_PATH'] = plugin_path
print(plugin_path)

关注一下控制台的输出,可以看到这行代码的输出是这个需要的文件的路径。

print(plugin_path)

然后打开“我的电脑”右键——“属性”——“高级系统设置”——“高级”——“环境变量”

添加新的系统变量其变量名如下,变量值为刚才控制台输出的值。

QT_QPA_PLATFORM_PLUGIN_PATH

添加后即可解决这一类问题。

注:添加完环境变量后一定要重启电脑!!!

2.使用Qt designer开发ui界面时有可能会碰到添加图片后,预览可以正常有图片资源,但是将.ui文件在程序中动态添加进去后不会显示问题。(注:这里添加指的是选择文件添加)这时原因可能有以下几种:

1存放项目的文件夹命名有空格或者命名太长。

2添加的图片命名需要注意。

3图片格式同.jpg调整为.png

4.如果直接利用重命名修改图片格式可能不行,将jpg图片放进ps中重新导出为png即可

3.使用Qt designer开发时为界面添加图片元素,图片不能随着比例自动调整问题。

首先使用label添加标签进去,然后为其填充图片,最后选择scaledContents即可。

4.使用pyinstaller进行开发后的程序打包。

首先,安装pip 安装pyinstaller程序包。

其次,使用windows的cmd命令行切换到程序项目文件夹下,找到主程序,然后右键属性找到文件位置,进行复制。进入cmd 输入cd 然后粘贴该位置,敲回车进入到该文件下。

然后输入该命令

pyinstaller main.py --noconsole --hidden-import PySide2.QtXml

第一个参数为不显示控制台,第二个参数为动态导入.ui文件。

最后在这个文件夹里即可找到打好包的项目文件,记着将需要的图片文件以及.ui文件复制到与.exe文件同级下面。

打包程序时有可能会遇到这样的问题。

 就是说这个递归错误,大概率是自己调用自己太多次导致的。

参考博客:(2条消息) 总结的若干关于RecursionError: maximum recursion depth exceeded问题的解决办法_welcome_yu的博客-CSDN博客

解决办法

在同级目录下生成的.spec文件中添加这两行后,使用之前的命令打包这个文件即可。

import sys
sys.setrecursionlimit(5000000)

即这样

pyinstaller Thermal_complete.spec --noconsole --hidden-import PySide2.QtXml

​​​​​​​ 

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值