【发布时间】:2020-09-22 16:05:16
【问题描述】:
请帮忙。使用 tkinter 时,当 def 在按钮下方时,我发现很难在按钮中调用定义的函数。我使用 python 3.6.9。示例
import tkinter
window = tkinter.Tk
button = tkinter.Button(window, text="hello",command=newpage()).grid(column=0, row=0)
def newpage():
new = tkinter.toplevel()
该按钮不起作用,除非我使用 lambda,而且如果我在按钮下定义新内容,则 lambda 也不起作用。新定义阻止 lambda 看到另一个 def。
注意:我使用这样的 lambda lambda:newpage()
注意:我使用 python 3.6.9
另外请我如何制作许多 tkinter 按钮以使用相同的命令(如在 def 中)
【问题讨论】:
-
我很想将其作为 stackoverflow.com/q/5767228/7432 的副本关闭。您能否扩展您的问题以显示您的问题有何不同?
-
@Bryan 请不要关闭问题。 Stackflow 一直是我应对大多数挑战的手段,我一遍又一遍地搜索,但无法从之前的任何问题中找到解决方案。请帮我解决这个问题。我想有两个按钮使用相同的 def 命令,但它不适用于我的 tkinter。 Lambda 也不工作。无论如何,请帮助我。
-
请证明您已经尝试过其他问题的建议。正如其他问题所示,
command需要以newpage的形式给出,而不是newpage()。 -
好的。万分感激。现在也在检查链接。非常感谢。
-
那么,您是说您要求我不要在您点击该链接之前关闭?为什么不先查看链接?
标签: button tkinter lambda command python-3.6