[英]Change Icon For Tkinter Messagebox
有沒有辦法改變 tkinter 消息框的圖標? 這是我的代碼:
from tkinter import *
import tkinter.messagebox as messagebox
root = Tk()
messagebox.showinfo(title='Example',message='This is an example')
root.mainloop()
是否可以將圖標從默認的 tkinter 羽毛更改為自定義 ico?
以下是您的問題的兩種可能的解決方案:
1.更改標題欄圖標
是的,我們可以在 tkinter 中為標題欄設置自定義圖標。
代碼:
import tkinter as tk
window = tk.Tk()
# change title bar icon
window.iconbitmap('book_2.ico')
window.mainloop()
注意:使用帶有iconbitmap()
函數的.ico文件
如果您為根窗口設置自定義圖標,則該圖標將被設置為所有其他子窗口的標題欄圖標,包括來自消息框模塊的消息框。
代碼:
import tkinter as tk
import tkinter.messagebox as tkmb
window = tk.Tk()
# change title bar icon
window.iconbitmap('book_2.ico')
# same icon is also set for the message box
tkmb.showinfo(title='Info', message='Info message box')
window.mainloop()
2.更改消息框內的圖標
不,您不能設置自定義圖標以在消息框內顯示。
但是您有四個預設圖標選項可供選擇,選項包括:
您可以通過為icon選項指定上述 4 個值之一來使用它們。
import tkinter.messagebox as tkmb
tkmb.showinfo(title='Message Box', message='Error message', icon='error')
tkmb.showinfo(title='Message Box', message='Info message', icon='info')
tkmb.showinfo(title='Message Box', message='Question message', icon='question')
tkmb.showinfo(title='Message Box', message='Warning message', icon='warning')
注意:默認圖標
showinfo()
消息框是信息showerror()
消息框出錯showwarning()
消息框是警告是的,有這樣的選擇。 假設您的根 Tkinter 實例稱為root
,您的導入語句from tkinter import *
,並且您的圖像文件名為'ico.gif'
:
root.tk.call('wm', 'iconphoto', root._w, PhotoImage(file='ico.gif'))
在創建root
對象之后和彈出messagebox
之前調用此方法。 該圖標將應用於根對象以及messagebox
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.