【问题标题】:Get widget name of label in frame using mouse使用鼠标获取框架中标签的小部件名称
【发布时间】:2017-02-10 22:58:43
【问题描述】:

Win7 SP1、Python 2.7、Tkinter。

我制作了一个框架,并在其中放置了一组标签。阵列为 10w x 24h。

我想单击其中一个标签并返回标签的名称,以便我可以更改它的变量。

我知道如何使用列表框,但如何仅使用“框架中的标签”?

谢谢,马克。

【问题讨论】:

    标签: python-2.7 tkinter label frame


    【解决方案1】:

    您不需要标签名称,而且标签没有有用的名称。当事件触发时,您将获得对小部件的引用,您可以使用它来查询或修改小部件属性。

    这是一个如何通过单击更改标签的示例。运行程序,然后根据需要随时单击任何标签。

    import Tkinter as tk
    import time
    
    def on_click(event):
        now = time.strftime("%H:%M:%S")
        event.widget.configure(text="you clicked me at %s" % now)
    
    root = tk.Tk()
    for row in range(4):
        for col in range(4):
            label = tk.Label(root, width=25, borderwidth=1, relief="sunken")
            label.grid(row=row, column=col, padx=2, pady=2)
            label.bind("<1>", on_click)
    
    root.mainloop()
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-01-27
      • 1970-01-01
      • 1970-01-01
      • 2021-12-21
      • 1970-01-01
      相关资源
      最近更新 更多