繁体   English   中英

TkInter按钮在网格上的坐标

[英]TkInter button coordinates on a grid

我目前正在用TkInter制作一个GUI,该GUI由内置于for循环中的网格组成,所有按钮都有1个变量(每个循环都会更新)。 我想知道如何获取所按按钮的坐标。 (例如,当我按下按钮时,它会给出它在网格上的坐标)。我使用了grid_info,但是它只获取最后创建的按钮的信息。 感谢您的帮助:)

您可以将行和列传递给与该功能关联的命令。 最常见的两种方法是使用lambda或functools.partial。

这是使用lambda的示例:

import tkinter as tk

def click(row, col):
    label.configure(text="you clicked row %s column %s" % (row, col))

root = tk.Tk()
for row in range(10):
    for col in range(10):
        button = tk.Button(root, text="%s,%s" % (row, col), 
                           command=lambda row=row, col=col: click(row, col))
        button.grid(row=row, column=col, sticky="nsew")
label = tk.Label(root, text="")
label.grid(row=10, column=0, columnspan=10, sticky="new")

root.grid_rowconfigure(10, weight=1)
root.grid_columnconfigure(10, weight=1)

root.mainloop()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM