访问使用for循环创建的条目小部件

2024-03-28 23:41:17 发布

您现在位置:Python中文网/ 问答频道 /正文

使用以下代码创建了一个条目数组

from tkinter import *
root = Tk()

height = 5
width = 5

delta=0

for i in range(height): #Rows
  for j in range(width): #Columns
    b = Entry(root, text="",width=8)
    b.grid(row=i, column=j)

mainloop()

如何访问每个条目以更新其值(例如使用StringVar)?在


Tags: 代码infromimportfortkinter条目range
2条回答

您需要首先声明StringVar变量:

myvar = StringVar()

然后,在循环中,只要您想检查变量的内容,请使用get()方法。在

x = myvar.get()

现在x将保存该值。也可以使用if执行bool测试

if myvar.get():
     print(myvar.get())

在if语句中,程序检查变量中是否有数据。如果没有,它将继续

再看一遍,您还应该在按钮中声明StringVar()。是这样的:

^{pr2}$

查看Here了解更多信息

您可以为您的Entry小部件创建列表。在

from tkinter import *
root = Tk()

height = 5
width = 5

delta=0

entries = []

for i in range(height): #Rows
  newrow = []
  for j in range(width): #Columns
    b = Entry(root, text="",width=8)
    b.grid(row=i, column=j)
    newrow.append(b)
  entries.append(newrow)

mainloop()

然后您可以将单个条目命名为entries[2][4]。在

编辑:要编辑条目小部件e的文本,首先使用e.delete(0, END)清除它,然后使用e.insert(0, "new text")插入新文本。在

Edit2:或者,您可以将StringVars存储在列表列表中,而不是小部件中。。。在

相关问题 更多 >