tkinter生成的t窗口,默認圖標就是一根 [羽毛] 的樣子,不太喜歡,想要換個圖標,這里找到了幾種方法:
1、使用iconbitmap 設置窗口圖標
self.init_window_name.iconbitmap(default = "../image/title.ico")
這里踩坑了,這里只支持ico類型位圖,不能為 png 或 jpg 等其他類型,否則圖像就會顯示失敗
2、使用iconphoto 設置窗口圖標
self.init_window_name.iconphoto(False,PhotoImage(file="../image/title.png"))
注:
(1)第一參數False 表示該圖標圖像僅適用于該特定窗口,而不適用于將來創(chuàng)建的 toplevels 窗口;如果設置為True ,則圖標圖像也將應用于以后創(chuàng)建的所有 toplevels 圖像;
(2)圖片我測試好像只支持png,其它圖片格式大家有空可以試一下,不行的話轉png就好
3、tk.call 設置窗口圖標
self.init_window_name.call('wm','iconphoto',self.init_window_name._w,PhotoImage(file="../image/title.png"))
這一種純是依葫蘆畫瓢,測試PNG是可以的
但以上三種,均只能改變窗體左上角圖標,對Windows下方任務欄無效,百度一下,大概意思是:windows認為彈出的工具窗口是python解釋器的衍生程序,即默認仍使用pythpn解釋器的圖標,只要在代碼中指定彈出窗口的AppUserModelID即可
ctypes.windll.shell32.SetCurrentProcessExplicitAppUserModelID("MY_GUI")