使用tkinter.ttkMenubutton()创建带图标的菜单
发布时间:2023-12-28 05:19:06
在Python的tkinter库中,我们可以使用ttkMenubutton()创建带图标的菜单按钮。ttk(Tile themed tkinter)提供了现代化的界面风格,增强了用户体验。
首先,我们需要导入tkinter和ttk模块:
from tkinter import * from tkinter import ttk
然后,我们可以创建一个Tk窗口,并设置其标题:
root = Tk()
root.title("带图标的菜单按钮示例")
接下来,我们可以定义一个用于点击菜单按钮时要执行的函数:
def open_menu():
print("菜单按钮被点击了!")
接着,我们可以创建一个ttkMenubutton部件,并为其添加一个图标。ttkMenubutton可以使用compound选项来设置图标的位置,可以选择值为BOTTOM、RIGHT、TOP或LEFT。
# 创建并添加图标 icon = PhotoImage(file="icon.png") # 替换为您自己的图标文件路径 menu_btn = ttk.Menubutton(root, text="菜单按钮", image=icon, compound=LEFT) menu_btn.image = icon # 记得保存对图标的引用 menu_btn.pack()
然后,我们可以创建一个菜单,并为菜单添加一些选项:
menu = Menu(menu_btn, tearoff=False) menu.add_command(label="选项1", command=open_menu) menu.add_command(label="选项2", command=open_menu) menu.add_command(label="选项3", command=open_menu)
接着,我们可以将菜单设置为菜单按钮的菜单,并显示窗口:
menu_btn.config(menu=menu) root.mainloop()
完整的代码如下:
from tkinter import *
from tkinter import ttk
root = Tk()
root.title("带图标的菜单按钮示例")
def open_menu():
print("菜单按钮被点击了!")
# 创建并添加图标
icon = PhotoImage(file="icon.png") # 替换为您自己的图标文件路径
menu_btn = ttk.Menubutton(root, text="菜单按钮", image=icon, compound=LEFT)
menu_btn.image = icon # 记得保存对图标的引用
menu_btn.pack()
# 创建菜单选项
menu = Menu(menu_btn, tearoff=False)
menu.add_command(label="选项1", command=open_menu)
menu.add_command(label="选项2", command=open_menu)
menu.add_command(label="选项3", command=open_menu)
menu_btn.config(menu=menu)
root.mainloop()
在上述示例中,我们创建了一个带有图标的菜单按钮。当点击菜单按钮时,将调用open_menu函数并打印一条消息。您需要将路径"icon.png"替换为您自己的图标文件路径。
这是一个简单的例子,可以根据自己的需求进行扩展和修改。
