[PyQt] 使用.qrc 生成資原始檔供程式中使用
阿新 • • 發佈:2018-12-29
建立 images.qrc檔案,裡面儲存了資源位置:
<!DOCTYPE RCC>
<RCC version="1.0">
<qresource>
<file alias="icons/add.png">icons/add.png</file>
<file alias="icons/appicon.png">icons/appicon.png</file>
<file alias="icons/button.png">icons/button.png</file>
<file alias ="qss/qss.qss">qss/qss.qss</file>
</qresource>
</RCC>
通過命令,用此qrc檔案生成 images.py 資原始檔:
pyrcc4 -o images.py images.qrc
在程式中使用:
import images
# 在程式中使用
icon = QIcon(':/icons/add.png')
下面這個python指令碼可以快捷地用目錄中的圖示、檔案生成一個可用的.py資原始檔
import subprocess, os
images = os.listdir('./icons' )
qss = os.listdir('./qss')
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="icons/'+ item +'">icons/'+ 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()
pipe = subprocess.Popen(r'pyrcc4 -o images.py images.qrc', stdout = subprocess.PIPE, stdin = subprocess.PIPE, stderr = subprocess.PIPE, creationflags=0x08)