python – 在网格上查找小部件(tkinter模块)

使用tkinter模块,假设我创建了一个包含50个按钮小部件的网格,每个小部件都有不同的文本.我需要能够在行和列中指定某种键入方式,我可以在该位置获取该小部件的文本.例如,如果我需要网格第二列第三行的小部件文本.我搜索了文档,但它告诉我如何获取有关小部件的信息,当我需要有关网格的信息时.

提前致谢

最佳答案 你有一个
previous answer相对于一个方法来保存字典中的按钮对象,以便使用它们在网格中的(列,行)位置来恢复它们.

因此,如果self.mybuttons是您在上一个答案中描述的按钮列表字典,那么您可以在位置行获取文本,col如下:

abutton = self.mybuttons[arow][acolumn]
text_at_row_col = abutton["text"]

另一方面,如果你需要的是从按钮回调中获取文本:

button.bind("<Button-1>", self.callback)

那么你可以从事件中获取按钮文本,你不需要知道它的行/列位置,只需按下它:

def callback(self, event):
    mybutton = event.widget
    text_at_row_col = mybutton["text"]
点赞