首页 > 解决方案 > 我可以用一个 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()

标签: pythonuser-interfacetkinter

解决方案


我对 TKinter 并不完全熟悉,但是您肯定可以编写自己的函数并将其传递给菜单对象吗?

这样,当按下按钮时,您可以“一次”执行多项操作:

def mybaconfunction():
    list.append("Bacon selected") 
    print("Bacon selected")


bacon = mb2.menu.add_command(label = "bacon", command =  mybaconfunction )

推荐阅读