Tkinter GUI计数器不计数Python
我的程序应该是一个非常简单的计数器,但我不明白为什么当按钮点击时它不计数Tkinter GUI计数器不计数Python,python,class,tkinter,counter,Python,Class,Tkinter,Counter,我的程序应该是一个非常简单的计数器,但我不明白为什么当按钮点击时它不计数 from tkinter import * class Counter: def __init__(self): self.__value = 0 self.__main_window = Tk() self.__current_value = Label(self.__main_window, text=self.__value)
from tkinter import *
class Counter:
def __init__(self):
self.__value = 0
self.__main_window = Tk()
self.__current_value = Label(self.__main_window, text=self.__value)
self.__current_value.pack()
self.__increase_button = Button(self.__main_window, text='Increase',
command=self.increase)
def increase(self):
self.__value += 1
def main():
Counter()
if __name__ == "__main__":
main()
tkinter中标签的文本配置不是自动更新的。存储在
self.\u value
变量中的值将被计算并显示为标签
对self.\u值的后续更改将不会反映在GUI中
更新self.\u值
变量时,还需要重新配置self.\u当前值
标签以反映这些更改。您可以更新increase
方法来重新配置标签,如下所示
def增加(自身):
自身值+=1
self.\u当前值.config(text=self.\u值)
您的意思是不缩进def increase()
那么远吗?您好,很抱歉,它有额外的4个空格,我现在已经修复了。但是现在是我的代码中最初的方式,它不起作用。我已经回答了问题的关键,但是我也注意到,您的self.\uu增加按钮
按钮从未打包到GUI中,并且不会显示。声明变量后,您可能需要添加self.\uu increase\u button.pack()
。非常感谢您在这些方面的帮助,我是GUI新手,所以我一直忘记这些小细节。这对你的评论也有很大帮助!