PyQt5 UI设计时自动创建qrc文件
Posted 蚂蚁小兵
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PyQt5 UI设计时自动创建qrc文件相关的知识,希望对你有一定的参考价值。
🌎前言
- 🍅写了个小脚本,方便PyQt开发时,qrc文件的自动创建
- 🌳测试软硬件环境:
Win10 X64
Python 3.8 X64
PyQt5 5.16.5
文章目录
🌎手动新建qrc文件
- 1️⃣ 我们在用PyQt5 Designer 去设计UI的时候,会想给控件加上小图标
- 熟悉Pyqt5图标操作的,可直接看下一个一级标题
- 2️⃣ 选择icon文件建议选择
Choose Resource
,这样打包的时候可以不用考虑原图的路径问题,也不需要拷贝进来
- 3️⃣ 新建一个 photo2.qrc 文件
- 4️⃣ 然后先创建两个分组,再在每个分组里面添加两个原图标文件,保存即可
- 5️⃣ photo2.qrc的内容如下
- 6️⃣ 如果已经有qrc文件,可以直接添加进来
- 7️⃣以下时实际工程为例,点击
photo.qrc
然后再pycharm 中将qrc
文件转为py
文件 - 这里不会添加外部工具的可以参考下一步骤
- 如果pycharm不会添加外部工具,参考这一步骤
$FileName$ -o $FileNameWithoutExtension$.py
$FileDir$
- 如果没有使用
pycharm
,也可以将路径切到当前工程下,执行如下cmd
- 8️⃣在我们将parse.ui文件转为 py文件后,再添加一句
import photo
- 这样就把图标的源文件转为py文件内容,这样打包时,就不需要再考虑原图标文件了
🌎自动创建qrc文件
- 1️⃣ 这是本章博客的重点,手动创建qrc有点麻烦,那就自动创建吧
- 下面是py 源码:搜索当前工程根目录下的所有
ico
文件,然后生成qrc
文件 - 再执行
os.popen("pyrcc5.exe photo.qrc -o photo.py")
自动生成py
文件
import os
cu = os.path.dirname(os.path.realpath(__file__))
print(cu)
def file_name(file_dir):
L = []
for root, dirs, files in os.walk(file_dir):
for file in files:
if os.path.splitext(file)[1] == '.ico':
L.append(os.path.join(root, file))
return L
files = file_name(cu)
print(files)
temp_str=''
for i in files:
tem = i.split("\\\\")
temp_str = temp_str + "\\n" + ''' <file>/</file>'''.format(tem[-2],tem[-1])
temp_str ='''<RCC>
<qresource prefix="picture">
%s
</qresource>
</RCC>
'''%temp_str
print(temp_str)
with open("photo.qrc",'w') as f:
f.write(temp_str)
os.popen("pyrcc5.exe photo.qrc -o photo.py")
- 2️⃣ 执行
collect .py
就直接自动生成了photo.qrc
和photo.py
文件
🌎总结
- 要有最朴素的生活,最遥远的梦想,即使明天天寒地冻,路遥马亡!
- 如果这篇博客对你有帮助,请 “点赞” “评论”“收藏”一键三连 哦!码字不易,大家的支持就是我坚持下去的动力。
以上是关于PyQt5 UI设计时自动创建qrc文件的主要内容,如果未能解决你的问题,请参考以下文章
vs2010中修改*.ui文件、替换图片后,不重新生成qrc_*.cpp
PyQt5 图形处理 - Qt Designer创建qrc资源文件引用图片资源实例演示,QTextBrower组件引用图片资源方法展示