我用一个循环在tkinter中制作了四个条目小部件。我遇到了一个错误-谁能帮我解决这个代码中的错误?
我需要跟踪所有四个条目小部件,因此我使用一个循环创建了四个StringVar
对象。我还必须为各个条目小部件分配单独的索引,因此我在for
循环中使用了变量“I”:
from tkinter import *
class App(Frame):
def __init__(self,parent=None,**kw):
Frame.__init__(self,parent,**kw)
for i in range(4):
j=0
self.textEntryVar[i] = StringVar()
self.e[i] = Entry(self, width=15, background='white', textvariable=self.textEntryVar[i], justify=CENTER, font='-weight bold')
self.e[i].grid(padx=10, pady=5, row=17+j, column=1, sticky='W,E,N,S')
j = j+1
if __name__ == '__main__':
root = Tk()
root.geometry("200x100")
app = App(root)
关键问题是索引数组
self.textEntryVar
和self.e
,而没有首先创建它们,也没有分配任何项。您需要将它们创建为空数组并附加到它们上。在另一个问题似乎是您从来没有将
App()
创建的框架打包到根目录上。在这不是问题,但是既然您使用的是python3'tkiner',我们也可以使用更简单的python3
super()
初始化。在下面是我对您的代码进行了上述修改和其他修复,看看是否更适合您:
相关问题 更多 >
编程相关推荐