python - 在 Tkinter 中使用 Checkbutton 制作菜单选项?

标签 python tkinter

我正在使用 Tkinter 制作菜单,但我想将 "add_checkbutton" 而不是 "add_command" 放入菜单选项,但问题是:我如何取消选择/选择一个复选框?

menu = Menu(parent)

parent.config(menu=menu)

viewMenu = Menu(menu)

menu.add_cascade(label="View", menu=viewMenu)
viewMenu.add_command(label = "Show All", command=self.showAllEntries)
viewMenu.add_command(label="Show Done", command= self.showDoneEntries)
viewMenu.add_command(label="Show Not Done", command = self.showNotDoneEntries)

最佳答案

您需要将一个变量与复选按钮项相关联,然后设置该变量以使该项目被选中或取消选中。例如:

import tkinter as tk

parent = tk.Tk()

menubar = tk.Menu(parent)
show_all = tk.BooleanVar()
show_all.set(True)
show_done = tk.BooleanVar()
show_not_done = tk.BooleanVar()

view_menu = tk.Menu(menubar)
view_menu.add_checkbutton(label="Show All", onvalue=1, offvalue=0, variable=show_all)
view_menu.add_checkbutton(label="Show Done", onvalue=1, offvalue=0, variable=show_done)
view_menu.add_checkbutton(label="Show Not Done", onvalue=1, offvalue=0, variable=show_not_done)
menubar.add_cascade(label='View', menu=view_menu)
parent.config(menu=menubar)

parent.mainloop()

关于python - 在 Tkinter 中使用 Checkbutton 制作菜单选项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3929355/

相关文章:

python - tkinter:如何更改 Canvas 项目上的光标?

python - 单选按钮变量不更新

python - 如何在让管理员在 Django 中默认工作的同时为我的应用程序创建自定义用户模型?

python - Pandas:使用函数将字符串转换为 float

python - 为什么 Tkinter 的单选按钮在使用 StringVar 而不是 IntVar 时都开始选中?

python - 在 Tkinter 中按下按钮后更新标签文本

python - 为什么序列化器中需要 context= {'request' : self. request} ?

python - M 类 : or class M():?

python - 使用 groupby 将分组数据转换为数据帧

python - 如何让这个按钮更新余额?