python - 我可以用一个 Tkinter 菜单按钮运行两个命令吗?
问题描述
如果你能看到哪里有培根、奶酪之类的配料。我正在尝试使该代码打印(“ bacon selected
”),同时它将自身保存到列表中。有人可以帮助我在bacon selected
保存到列表时使该程序打印(“”)。
list = []
from tkinter import *
root = Tk()
root.geometry("300x300")
mb2= Menubutton(root, text = "Choose your toppings ")
mb2.menu = Menu(mb2)
mb2["menu"] = mb2.menu
bacon = mb2.menu.add_command(label = "bacon", command = lambda:list.append("Bacon selected")
#i want to add another command that prints bacon selected here?
chesse = mb2.menu.add_command(label = "cheese", command = lambda:list.append("Cheese selected"))
mb2.pack()
root.mainloop()
解决方案
我对 TKinter 并不完全熟悉,但是您肯定可以编写自己的函数并将其传递给菜单对象吗?
这样,当按下按钮时,您可以“一次”执行多项操作:
def mybaconfunction():
list.append("Bacon selected")
print("Bacon selected")
bacon = mb2.menu.add_command(label = "bacon", command = mybaconfunction )
推荐阅读
- javascript - 如何在 antd select 上添加分页?因为从接口获取数据是巨大的。所以我想实现分页
- python - Python 3.6 tkinter 说 GROOVE 没有定义
- google-cloud-platform - SyntaxError:位置参数跟随关键字参数 | 用于语音到文本的 Python 客户端
- angular - PrimeNg 柱过滤
- microsoft-teams - 在管理中心启用应用程序不可用。如何更改设置?
- delphi - 更改 Delphi 10 自动生成的文件(identcache、dof、cfg...)
- c# - EPPlus - InsertRow:行不能小于 1。参数名称:值
- kubernetes - kubectl get nodes 命令出错
- android - Firebase 性能监控显示 0 个会话
- azure-service-fabric - 将 dll 复制到 azure VM 规模集以供其他服务在运行时使用