编辑:我修正了这个帖子所涉及的错误,等等,现在我正在尝试一种不同的方式来实现我最初想要的高级功能。这次我有一个显示器,还有一个显示功能。按钮通过在所述显示中插入文本来调用更新功能。我想知道如何使用这个函数,也许textvariable =这样我就可以把我的按钮文本从1,2,3,4改成。。。9,0到A,B,C,D…I,J。我的代码在下面,任何帮助都将不胜感激。:)from tkinter import *
import time
root = Tk()
root.title('Calculator')
displayb = Entry(root)
displayb.grid(row = 1, columnspan = 6)
mode = 0
i = 0
'''def update():
global mode
if mode == 0:
mode = 1
else:
mode = 0
return'''
def display(e):
global i
displayb.insert(i,e)
i += 1
txt1 = StringVar()
a = '1' if mode == 0 else 'A'
one = Button(root, text = '1', command = lambda : display(1))
txt1.set(a)
one.grid(row = 2, column = 0)
two = Button(root, text = '2', command = lambda : display(2))
two.grid(row = 2, column = 1)
three = Button(root, text = '3', command = lambda : display(3))
three.grid(row = 2, column = 2)
four = Button(root, text = '4', command = lambda : display(4))
four.grid(row = 3, column = 0)
five = Button(root, text = '5', command = lambda : display(5))
five.grid(row = 3, column = 1)
six = Button(root, text = '6', command = lambda : display(6))
six.grid(row = 3, column = 2)
seven = Button(root, text = '7', command = lambda : display(7))
seven.grid(row = 4, column = 0)
eight = Button(root, text = '8', command = lambda : display(8))
eight.grid(row = 4, column = 1)
nine = Button(root, text = '9', command = lambda : display(9))
nine.grid(row = 4, column = 2)
zero = Button(root, text = '0', command = lambda : display(0))
zero.grid(row = 5, column = 1)
'''shift = Button(root, text = 'sft', command = lambda : mode = 1 if mode == 0 else 0)
shift.grid(row = 2, column = 1)'''
root.mainloop()