tkinter生成的t窗口誊酌,默認(rèn)圖標(biāo)就是一根 [羽毛] 的樣子,不太喜歡露乏,想要換個(gè)圖標(biāo)碧浊,這里找到了幾種方法:
1、使用iconbitmap 設(shè)置窗口圖標(biāo)
self.init_window_name.iconbitmap(default = "../image/title.ico")
這里踩坑了施无,這里只支持ico類型位圖辉词,不能為 png 或 jpg 等其他類型,否則圖像就會(huì)顯示失敗
2猾骡、使用iconphoto 設(shè)置窗口圖標(biāo)
self.init_window_name.iconphoto(False,PhotoImage(file="../image/title.png"))
注:
(1)第一參數(shù)False 表示該圖標(biāo)圖像僅適用于該特定窗口瑞躺,而不適用于將來(lái)創(chuàng)建的 toplevels 窗口;如果設(shè)置為True 兴想,則圖標(biāo)圖像也將應(yīng)用于以后創(chuàng)建的所有 toplevels 圖像幢哨;
(2)圖片我測(cè)試好像只支持png,其它圖片格式大家有空可以試一下嫂便,不行的話轉(zhuǎn)png就好
3捞镰、tk.call 設(shè)置窗口圖標(biāo)
self.init_window_name.call('wm','iconphoto',self.init_window_name._w,PhotoImage(file="../image/title.png"))
這一種純是依葫蘆畫瓢,測(cè)試PNG是可以的
但以上三種毙替,均只能改變窗體左上角圖標(biāo)岸售,對(duì)Windows下方任務(wù)欄無(wú)效,百度一下厂画,大概意思是:windows認(rèn)為彈出的工具窗口是python解釋器的衍生程序凸丸,即默認(rèn)仍使用pythpn解釋器的圖標(biāo),只要在代碼中指定彈出窗口的AppUserModelID即可
ctypes.windll.shell32.SetCurrentProcessExplicitAppUserModelID("MY_GUI")