python為QT程序添加圖標的方法詳解
Qt是一種基于C++的跨平臺圖形用戶界面應用程序開發(fā)框架。如何跨平臺?上到服務器上位機,下到嵌入式GUI,上天入地無所不能。Qt最早是由1991年由Qt Company開發(fā),但是到2008年,Qt Company科技被諾基亞公司收購,是的,就是擁有著我們很多情懷的諾基亞。但在2012年,Qt又被Digia收購。等到了2014年,跨平臺集成開發(fā)環(huán)境Qt Creator 3.1.0正式發(fā)布出來,至此,全面支持iOS、Android、WP,QT的時代開始逐步展開。
本文重點給大家介紹python為QT程序添加圖標的方法,一起看看吧。
設置圖標
最好使用.gif圖標,且不能是由其它格式(如.png)強行更改格式過來的圖標文件作為程序圖標,否則均有可能導致顯示不出來
在開發(fā)中使用圖標
from PyQt5.QtGui import QIcon
self.setWindowIcon(QIcon('images/squirrel.gif'))
此時,我們只要在主函數(shù)模塊的同級目錄下有images文件夾,且里面包含squirrel.gif圖標,我們運行主函數(shù)測試時就能正常顯示圖標。
但是這樣做在打包后生成的.exe程序執(zhí)行時并不能顯示圖標。
打包時圖標處理
1.在主函數(shù)模塊同級目錄下創(chuàng)建resources_rc.qrc文件,內容如下(刪掉注釋)
<!DOCTYPE RCC><RCC version="1.0"> <!--帶上前綴,將qrc生成的圖標偽裝成images目錄下的文件 --> <qresource prefix="/images"> <!--images/squirrel.ico為圖標位置 --> <!--qrc生成的圖標名稱為image.ico,之后主函數(shù)調用的就是這個名稱 --> <file alias="image.ico">images/squirrel.ico</file> </qresource> </RCC>
2.將resources_rc.qrc轉為.py文件
pyrcc5 -o resources_rc.py resources_rc.qrc
3.引用.py中生成的圖標
import resources_rc
# 此處的:/images/image.ico為.py生成的圖標,與之前的存儲路徑無關
# 可以運行測試,如果顯示圖標,則調用成功
self.setWindowIcon(QIcon(':/images/image.ico'))
4.打包,帶上圖標物理地址
#run.py為主函數(shù)地址 pyinstaller.exe -F -w -i C:\Users\TR\Desktop\translationTools\images\squirrel.ico run.py
5.運行run.exe,成功顯示圖標


到此這篇關于python為QT程序添加圖標的方法詳解的文章就介紹到這了,更多相關python qt添加圖標內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Python實現(xiàn)批量提取Excel數(shù)據(jù)
在數(shù)據(jù)處理和分析的過程中,Excel 是一種廣泛使用的數(shù)據(jù)存儲格式,本文將詳細介紹如何使用 pandas、openpyxl 和 xlrd 三種庫來批量提取 Excel 數(shù)據(jù),并提供相應的示例代碼,需要的可以參考下2024-12-12
python使用post提交數(shù)據(jù)到遠程url的方法
這篇文章主要介紹了python使用post提交數(shù)據(jù)到遠程url的方法,涉及Python使用post傳遞數(shù)據(jù)的相關技巧,需要的朋友可以參考下2015-04-04
python根據(jù)開頭和結尾字符串獲取中間字符串的方法
這篇文章主要介紹了python根據(jù)開頭和結尾字符串獲取中間字符串的方法,涉及Python操作字符串截取的相關技巧,具有一定參考借鑒價值,需要的朋友可以參考下2015-03-03
如何在Python?中使用?join()?函數(shù)把列表拼接成一個字符串
這篇文章主要介紹了如何在Python?中使用?join()?函數(shù)把列表拼接成一個字符串,文章圍繞?join()?函數(shù)的相關資料展開詳細內容,需要的小伙伴可以參考一下,希望對你有幫助2022-03-03
python編寫softmax函數(shù)、交叉熵函數(shù)實例
這篇文章主要介紹了python編寫softmax函數(shù)、交叉熵函數(shù)實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-06-06
Python中Numpy和Matplotlib的基本使用指南
numpy庫處理的最基礎數(shù)據(jù)類型是由同種元素構成的多維數(shù)組(ndarray),而matplotlib 是提供數(shù)據(jù)繪圖功能的第三方庫,其pyplot子庫主要用于實現(xiàn)各種數(shù)據(jù)展示圖形的繪制,這篇文章主要給大家介紹了關于Python中Numpy和Matplotlib的基本使用指南,需要的朋友可以參考下2021-11-11

