(我正在使用Python 3.5 . )
我创建了一个5x5网格,并希望从某个行/ colomn获取输入 .
我've never used tkinter before and I'是编程新手 .
我创建了show按钮,所以每次用户按下它时,我都希望输入打印 . 问题是,由于我的两个for循环,它只打印出最后一个元素44,因为's when the loop'已完成 .
如何在不更改for循环的情况下获取所有输入?
sudoku = Tk()
def show_entry_fields():
print(name[r][i].get())
i = 0
for i in range(0,5):
for r in range(0,5)
name[r][i] = Entry(sudoku)
name[r][i].grid(row=r,column=i)
Button(sodoku, text='Quit', command=sodoku.quit).grid(row=5, column=1)
Button(sodoku, text='Show', command=show_entry_fields).grid(row=5, column=2)
sodoku.mainloop()
1 回答
我习惯使用字典来存储tkObject *(Frame,Grid等...)
实际上,当你想获得所有对象或只是根,或只是第一层的Frame时,它是有用的 .
在这种情况下,当[0]是Tk实例时,root [1,*]将为您提供网格的第一行 .
事实上,你也可以这样做:
我没有测试这段代码 . 所以,要小心 .
测试一下: