有没有办法更改 tkinter 消息框的图标? 这是我的代码:
from tkinter import *
import tkinter.messagebox as messagebox
root = Tk()
messagebox.showinfo(title='Example',message='This is an example')
root.mainloop()
是否有将图标从默认的 tkinter feather 更改为自定义 ico 的选项?
最佳答案
以下是针对您的问题的两种可能的解决方案:
<强>1。更改标题栏图标
是的,我们可以在tkinter中为标题栏设置自定义图标。
代码:
import tkinter as tk
window = tk.Tk()
# change title bar icon
window.iconbitmap('book_2.ico')
window.mainloop()
注意:将 .ico 文件与 iconbitmap()
函数一起使用
如果您为根窗口设置自定义图标,那么这个相同的图标将被设置为所有其他子窗口的标题栏图标,包括来自messagebox 模块的消息框。
代码:
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()
消息框是infoshowerror()
消息框是错误showwarning()
消息框是警告
关于python - 更改 Tkinter 消息框的图标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31815007/