【问题标题】:Python Tinter dropdown menu command with click event [duplicate]带有单击事件的Python Tkinter下拉菜单命令[重复]
【发布时间】:2015-10-29 14:08:09
【问题描述】:

我有一个使用此代码创建的 TKinter 下拉菜单:

#menu
menu = Menu(window)
window.config(menu = menu)
subMenu = Menu(menu)

menu.add_cascade(label = "Kies een ander station", menu = subMenu)
subMenu.add_command(label = "Amersfoort", command = print('test'))
subMenu.add_separator()
subMenu.add_command(label = "Amsterdam Centraal", command = print('test2'))
subMenu.add_separator()
#etc..

当我编译和运行时,每个subMenu.add_command() 函数的command 属性中的代码都会立即执行。当我单击菜单项时,我想实现这一点。我该怎么做?

【问题讨论】:

    标签: python tkinter pycharm


    【解决方案1】:

    将它们放入 lambdas 中。这将使表达式变成可调用对象,在执行之前耐心等待事件发生。

    subMenu.add_command(label = "Amersfoort", command = lambda: print('test'))
    subMenu.add_separator()
    subMenu.add_command(label = "Amsterdam Centraal", command = lambda: print('test2'))
    

    【讨论】:

      猜你喜欢
      • 2018-09-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-05-18
      • 2012-12-08
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多