PYQT5|一键自动生成并应用QRC资源文件

32 篇文章 16 订阅

QT designer 应用QRC资源文件,而不是外部加载图片,亲测可用。

一、生成QRC资源文件

1.复制以下代码,在图片目录下,新建一个python文件,然后运行即可;

import subprocess, os

def run_cmd(cmd):
    print('cmd={}'.format(cmd))
    subprocess.Popen(str(cmd), stdout=subprocess.PIPE, stdin=subprocess.PIPE,stderr=subprocess.PIPE, creationflags=0x08)


#1.批量重命名
png_path='.\\png_ico\\'
qss_path='.\\qss\\'
images = os.listdir(png_path)
images_new=[]
renameTotal=1
for item in images:
    addCount = 1
    item_new=str(item).replace(' ','_').replace('\n','_').replace('%','_').replace('¥','_').replace('副本','_')\
        .replace('&','_').replace('-','_').replace('.','_').replace('#','_').replace('@','_')\
        .replace('(','_').replace(')','_').replace('(','_').replace(')','_').replace('\t','_')\
        .replace('_png','.png').replace('_jfif','.jfif').replace('_zip','.zip').replace('_ico','.ico')\
        .replace('_rar','.rar').replace('___','_').replace('__','_')
    
    filename = os.path.splitext(item)[0]  # 文件名
    filetype = os.path.splitext(item)[1]  # 文件名
    while item_new in images_new:
        item_new=filename+"_"+str(addCount)+filetype
        addCount += 1
        
    images_new.append(item_new)
    print('重命名第 {} 张图片, {} => {}'.format(renameTotal,item, item_new))
    os.rename(png_path+item, png_path+item_new)  # 重命名
    renameTotal +=1

print(images_new)

'''
2.生成qrc文件,包含需要操作的图片资源的目录
'''
images = os.listdir(png_path)    #填入相对路径目录名
qss = os.listdir(qss_path)    #填入相对路径目录名
f = open('images.qrc', 'w+')
f.write(u'<!DOCTYPE RCC>\n<RCC version="1.0">\n<qresource>\n')

for item in images:
    f.write(u'<file alias="png_ico/' + item + '">png_ico/' + item + '</file>\n')

for item in qss:
    f.write(u'<file alias="qss/' + item + '">qss/' + item + '</file>\n')

f.write(u'</qresource>\n</RCC>')
f.close()

#3.生成qrc文件
#获取程序当前路径
program_current_path=os.path.abspath('.')
print('program_current_path={}'.format(program_current_path))

make_qrc='pyrcc5 -o .\images_rc.py .\images.qrc'
run_cmd(make_qrc)



二、加载QRC资源文件

1.在QT designer界面,点击任意一个可以设置图标的控件,选择icon属性=》选择资源;

 

 

 

 

 

 

  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

《代码爱好者》

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值