编辑:我修正了这篇文章所涉及的错误等,现在我正在尝试一种不同的方式来实现我原本想要的高级功能。这次我有一个显示器和一个显示功能。按钮通过将文本插入所述显示器来调用更新功能。我想知道如何使用这个功能,也许status
以便我可以改变我的按钮'文本从1,2,3,4 ... 9,0到A,B,C,D ...... I,J。我的代码如下,任何帮助将不胜感激。 :)
textvariable =
答案 0 :(得分:2)
在为command
参数提供值时,您需要通过为其赋予函数名称来为其提供对函数的引用。
shift = Button(root, text = 'sft', command = update())
这里有()
,它正在调用你的函数。要么删除()
,要么像之前那样使用lambda
。
现在,您收到错误的原因是mode
是global
变量,在update
函数之外定义。因此,如果您想更新变量,则需要告知mode
global
def update():
global mode
if mode == 0:
mode = 1
else:
mode = 0
return mode
另请注意,除非您在其他地方调用此函数,否则无法在按下按钮时检索返回值。
有关global and local scope的更多信息。