高级计算器具有Tkinter GUI和可变错误

时间:2017-02-09 04:05:36

标签: python python-3.x user-interface tkinter

编辑:我修正了这篇文章所涉及的错误等,现在我正在尝试一种不同的方式来实现我原本想要的高级功能。这次我有一个显示器和一个显示功能。按钮通过将文本插入所述显示器来调用更新功能。我想知道如何使用这个功能,也许status以便我可以改变我的按钮'文本从1,2,3,4 ... 9,0到A,B,C,D ...... I,J。我的代码如下,任何帮助将不胜感激。 :)

textvariable =

1 个答案:

答案 0 :(得分:2)

在为command参数提供值时,您需要通过为其赋予函数名称来为其提供对函数的引用。

shift = Button(root, text = 'sft', command = update())

这里有(),它正在调用你的函数。要么删除(),要么像之前那样使用lambda

现在,您收到错误的原因是modeglobal变量,在update函数之外定义。因此,如果您想更新变量,则需要告知mode global

def update():
    global mode
    if mode == 0:
        mode = 1
    else:
        mode = 0
    return mode

另请注意,除非您在其他地方调用此函数,否则无法在按下按钮时检索返回值。

有关global and local scope的更多信息。