Python3.4.2 tkinter菜单自动调用函数

2024-09-30 14:19:51 发布

您现在位置:Python中文网/ 问答频道 /正文

我对python的tkintergui非常陌生,我正试图用它来构建一个基本的测试。在

我创建了一个菜单,其中一个菜单项必须调用一个函数,尽管当我运行程序时,我可以在菜单项被单击之前看到函数的输出,而当菜单项被单击时,它不会调用函数。在

我的代码如下

from tkinter import *

class cl_main():

    def __init__(self, master):

        lo_mainmenu = Menu(master)
        lo_mainmenu.option_add('*tearOff', FALSE)
        master.config(menu=lo_mainmenu)

        lo_menugroup = Menu(lo_mainmenu)

        lo_mainmenu.add_cascade(label="MenuGroup")
        lo_menugroup.add_command(label="Command", command=f_message())

def f_message():
    print ("This Function Has Been Called")

root = Tk()

co_main = cl_main(root)

root.mainloop()

我看不出有什么问题,但我肯定这里出了可怕的问题


Tags: 函数masteraddmessageloclmaindef
1条回答
网友
1楼 · 发布于 2024-09-30 14:19:51
lo_menugroup.add_command(label="Command", command=f_message())

回调不应该有括号。实际上,f_message立即被调用,其返回值被分配给command,而不是函数对象本身。在

^{pr2}$

相关问题 更多 >