赞
踩
QT designer 应用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)
-
-
-
1.在QT designer界面,点击任意一个可以设置图标的控件,选择icon属性=》选择资源;
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。