-1
嗨我试图使用tkinter gui与python做一个简单的计算器。但首先我试图创建按钮,一旦它们被点击,它们被附加到屏幕上显示的结果上。 (就像现实生活中的计算器,如果屏幕显示12和我点击3,屏幕则显示123)按钮命令的Python Tkinter错误
from Tkinter import *
class Calculator(Frame):
def __init__(self):
Frame.__init__(self)
self.master.title('Calculator')
self.pack()
self.screen=Frame(self, borderwidth=20, relief=SUNKEN)
self.screen.pack()
self.txtDisplay = Text(self.screen, width=20, height=2)
self.txtDisplay.pack()
self.screen.grid(row=0, columnspan=5) #columnspan to span multiple columns
Contents = ['1','2','3','+','4','5','6','-','7','8','9','*','C','0','=','/']
Buttons = [None]*16
j=1
count=0
for i in range(16):
Buttons[i]=Button(self, text=Contents[i], command=lambda : self.txtDisplay.insert(END, Contents[i]), height=2, width=5, borderwidth=5)
Buttons[i].grid(row=j, column=i%4)
count+=1
if count%4==0:
j+=1
count=0
Calculator().mainloop()
然而,问题是,每当我点击任何链接,并最终导致屏幕只重视///////////////
/是的内容列表中最后一个元素,我想有一些错误
command=lambda : self.txtDisplay.insert(END, Contents[i])
我能摹以及为什么会发生这种情况的解释以及我如何处理它?
它将从
i
复制值哦,我忘了我来分配每个值。感谢您的帮助! –