我正在使用Tkinter在python中创建一个计算器,我无法通过按钮来更改标签上的文本。提前谢谢。
calc = Tk()
calc.title("Calculator")
calc.configure(bg='gray')
def nu1():
numbers == '1'
numbers = '0'
screen = Label(calc, text=numbers)
screen.grid(row=0, column=0)
no1 = Button(calc, text='1', command=nu1)
no1.grid(row=0, column=2)
答案 0 :(得分:0)
numbers == '1'
测试numbers
是否等于'1'字符串,然后将结果抛出。我怀疑你打算做什么
numbers = '1'
但仍然行不通。首先,该分配会为numbers
函数创建一个新的nu1
,它与您的全局numbers
无关。其次,这不是如何更改Label的文本:您需要调用其configure
方法,该方法可以缩短为config
。这是一个例子:
import tkinter as tk
calc = tk.Tk()
calc.title("Calculator")
calc.geometry('200x200')
def nu1():
screen.config(text='1')
numbers = '0'
screen = tk.Label(calc, text=numbers)
screen.grid(row=0, column=0)
no1 = tk.Button(calc, text='1', command=nu1)
no1.grid(row=0, column=2)
calc.mainloop()
这解决了你当前的问题。但是,您会发现这不足以构建计算器。