【问题标题】:How do i differentiate between two widgets on the same event我如何区分同一事件的两个小部件
【发布时间】:2022-11-30 03:20:33
【问题描述】:

我想要一些包含文本的输入框,让用户知道需要输入什么。当用户点击它时,该文本应该消失。我怎么知道用户点击了哪个框?

class window():
    def handleEvent(self,event):
        self.text.set("")
    def handleEvent2(self,event):
        a = self.efeld.get()
        print(a)
    def page0(self):
        self.text = tk.StringVar(None)
        self.text.set("Enter text here")
        self.efeld = ttk.Entry(fenster, textvariable=self.text)
        self.efeld.place(x=5, y=20)
        self.efeld.bind("<Button-1>",self.handleEvent)
        self.efeld.bind("<Return>",self.handleEvent2)
        self.text2 = tk.StringVar(None)
        self.text2.set("Enter text 2 here")
        self.efeld2 = ttk.Entry(fenster, textvariable=self.text2)
        self.efeld2.place(x=5, y=50)
        self.efeld2.bind("<Button-1>",self.handleEvent)
        self.efeld2.bind("<Return>",self.handleEvent2)
fenster = tk.Tk()
fenster.title("Test")
fenster.geometry("500x350")
fenster.resizable(False,False)
window().page0()
fenster.mainloop()

【问题讨论】:

    标签: python tkinter


    【解决方案1】:

    您可以使用 event 对象的 widget 属性。它是对获取事件的小部件的引用。

    def handleEvent2(self,event):
        a = event.widget.get()
        print(a)
    

    【讨论】:

      【解决方案2】:

      您可以使用 event.widget 属性获取对触发事件的小部件的引用。

      【讨论】:

        猜你喜欢
        • 2023-03-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多