📅  最后修改于: 2023-12-03 15:05:36.255000             🧑  作者: Mango
在使用 Tkinter 创建 GUI 程序时,经常会用到各种按钮,用于触发各种功能。为了提高按钮的可识别性和美观程度,我们可以给按钮添加图标。
实现添加图标有两种方式,一种是使用 PhotoImage
,另一种是使用 BitmapImage
。
PhotoImage
可以读取 GIF、PGM、PPM 和 PNG 格式的图片,支持透明背景。以下是添加图片并使用 Button
的代码:
from tkinter import *
root = Tk()
photo = PhotoImage(file="image.gif")
btn = Button(root, image=photo, command=func)
btn.pack()
root.mainloop()
其中 PhotoImage
的参数可以是图片的文件名或文件对象,需要注意的是,如果使用 PhotoImage
,需要在创建 Button
对象时传入 image
参数。如果不需要命令操作,可以只传入 Button
的 text
和 image
参数。
BitmapImage
用于读取 XBM 格式的图片,只支持黑白颜色。以下是添加图片并使用 Button
的代码:
from tkinter import *
root = Tk()
bitmap = BitmapImage(file="image.xbm")
btn = Button(root, image=bitmap, command=func)
btn.pack()
root.mainloop()
与 PhotoImage
类似,需要在创建 Button
对象时传入 image
参数。
以下是一个完整的程序演示如何在 Tkinter
中添加图标到按钮中:
from tkinter import *
root = Tk()
# 创建 PhotoImage 对象
photo = PhotoImage(file="image.gif")
# 创建 BitmapImage 对象
bitmap = BitmapImage(file="image.xbm")
# 创建带图标的按钮
btn1 = Button(root, text="Button 1", image=photo, compound=CENTER)
btn2 = Button(root, text="Button 2", image=bitmap, compound=CENTER)
# 显示按钮
btn1.pack(side=LEFT)
btn2.pack(side=LEFT)
root.mainloop()
运行结果如下:
在实例中,我们创建了一个 PhotoImage
对象和一个 BitmapImage
对象,并在两个按钮中添加,并使用 compound
参数将图标和文本居中对齐。
通过本文,我们了解了如何在 Tkinter
中添加图标到按钮中,可以通过 PhotoImage
或 BitmapImage
两种方式实现。在实际使用中,我们可以根据情况选择适当的方式,增强应用程序的用户体验。