說明
本文參考QT 設(shè)置程序圖標(biāo)、QT5.8.0 vs2013平臺(tái)更改程序運(yùn)行icon圖標(biāo)和# Qt之任務(wù)欄系統(tǒng)托盤圖標(biāo)三篇博文做了一定整理。
應(yīng)用程序圖標(biāo)主要有以下四種
-
主窗口圖標(biāo):
titlePic.png -
狀態(tài)欄上顯示圖標(biāo):
statePic.png -
執(zhí)行程序本身圖標(biāo):
exePic.png -
系統(tǒng)托盤圖標(biāo):
trayPic.png
主窗口圖標(biāo)
在程序中使用setWindowIcon()函數(shù)實(shí)現(xiàn)。
狀態(tài)欄上顯示圖標(biāo)
在程序中使用setWindowIcon()函數(shù)實(shí)現(xiàn)。
執(zhí)行程序本身圖標(biāo):
這里涉及到兩種方式,一種是使用QtCreator開發(fā)代碼,另一種是采用Vs+Qt方式開發(fā)代碼。
使用QtCreator
有兩種方式可以實(shí)現(xiàn):
使用qmake來生成makefile文件,只需要在
.pro中添加:
RC_ICONS = logo.ico
然后,重新生成makefile文件和應(yīng)用程序,對(duì)應(yīng)的.exe可執(zhí)行程序?qū)?huì)出現(xiàn)剛才看到的圖標(biāo)。
這種情況下,要將logo.ico與.pro文件放到同一個(gè)文件夾下。在項(xiàng)目代碼文件夾中,新建一個(gè)logo.txt文件,在文件里寫上以下內(nèi)容:
IDI_ICON1 ICON DISCARDABLE "logo.ico"
然后重命名為logo.rc文件。
在.pro文件里添加:
RC_FILE = logo.rc
重新編譯就可以了。
使用Vs+Qt
-
項(xiàng)目上右擊->添加->資源->選擇icon
addIcon.png -
確定之后,項(xiàng)目中就會(huì)出現(xiàn)一個(gè)xxx.rc 的文件
appIcon.png -
運(yùn)行文件的圖標(biāo)變成了設(shè)置的app_32.ico
exePic.png
系統(tǒng)托盤圖標(biāo)
使用QSystemTrayIcon類,setIcon()設(shè)置圖標(biāo),setToolTip()設(shè)置鼠標(biāo)放上時(shí)顯示信息,show()顯示系統(tǒng)托盤圖標(biāo)。
系統(tǒng)托盤的鼠標(biāo)事件參考Qt之任務(wù)欄系統(tǒng)托盤圖標(biāo)博文。
注意
我們就多討論一點(diǎn)。如果只設(shè)置了可執(zhí)行程序的圖標(biāo),而沒有設(shè)置窗口左上方的圖標(biāo),會(huì)是什么樣的呢?
答案就是 如果只設(shè)置了可執(zhí)行程序的圖標(biāo),而沒有設(shè)置窗口左上方的圖標(biāo)。結(jié)果就是窗口左上方的圖標(biāo)、狀態(tài)欄圖標(biāo)和可執(zhí)行程序圖標(biāo)將使用同一個(gè)圖標(biāo)。 反之卻不能。






