我想创建一个程序,该程序从用户获取一个整数,并在Tkinkter窗口中生成尽可能多的条目。然后它会根据它们制作图表,但是现在我不知道如何在窗口中创建尽可能多的条目。我在下面试过这样的东西,但它不起作用。请帮忙..编辑:哦,它的PyDev for Eclipse python 2.75
# -*- coding: utf-8 -*-
#import matplotlib.pyplot as mp
import Tkinter as T, sys
def end():
sys.exit()
def check():
z = e.get()
try:
z = int(z)
e.config(bg = 'green')
e.after(1000, lambda: e.config(bg = 'white'))
x = []
for i in (0,z):
x.append(e = T.Entry(main, justify = 'center'))
x[i].pack()
except:
e.config(bg = 'red')
e.after(1000, lambda: e.config(bg = 'white'))
z = 0
main = T.Tk()
main.title('something')
main.geometry('600x600')
main.config(bg = "#3366ff")
e = T.Entry(main,justify = 'center')
l = T.Label(main,text = 'Give me an N =',bg = '#3366ff')
b1 = T.Button(main, text = 'OK', command = check)
b = T.Button(main,text = 'Zakończ', command = end)
l.pack()
e.pack()
b1.pack()
b.pack()
main.mainloop()
答案 0 :(得分:1)
让你的循环看起来像这样:
for i in range(0,z):
x.append( T.Entry(main, justify = 'center'))
x[i].pack()
你需要使用range
,因为当你没有它只迭代两次因为它认为它迭代通过2项元组而不是数字列表
也摆脱了e =
,以便每次只添加一个新条目