Python3.5.1,Tkinter:函数在启动时执行,而不是在按钮cli上执行

2024-09-26 18:18:52 发布

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

所以,我正在为一个当地俱乐部创建一个客户经理软件。 我使用的是python3.5.1和Tkinter。在

用一个笔记本来嵌套我的相框。 在我的第一个框架中,我制作了一个添加新客户机(标签和文本框)的表单,并在末尾添加了一个“添加”按钮。 问题是它执行与按钮相关联的函数,而不是onclick,而按钮实际上在单击时什么也不做。 到处找,似乎是个罕见的问题。 帮忙吗?在


Tags: 函数框架表单客户机软件tkinter笔记本标签
2条回答

据我所知,正如评论中所说,你没有正确设置命令。在

如果您有一个函数,您需要设置my_button = tk.Button(..., command = my_function)

如果函数接受关键字参数,则需要像这样传递函数

my_button = tk.Button(...., command = lambda: function(argument))

我会尝试在命令之前使用lambda:。在

例如,将readFile(file)替换为lambda: readFile(file)。在

这将确保传递不带参数的匿名(“lambda”)函数,该函数在执行时将运行预期的代码。否则,当设置行为时,函数只执行一次,然后每次只需重新计算返回值,而不是调用相应的函数。在

相关问题 更多 >

    热门问题