有没有可能在按下鼠标的同时跟踪我输入的窗口小部件?我想创建一个链式效果,当单击并拖动鼠标并从一个小部件移动到另一个小部件时,label\按钮的背景会发生变化。
谢谢:)
发布于 2021-01-20 04:45:21
您可以绑定到<B1-Motion>事件,然后使用winfo_containing将小部件置于光标下。
下面是一个简单的例子:
import tkinter as tk
root = tk.Tk()
current_label = tk.Label(root, text="", anchor="w", width=100)
current_label.pack(side="top", fill="x")
def show_widget(event):
widget = event.widget.winfo_containing(event.x_root, event.y_root)
current_label.configure(text=f"widget: {str(widget)}")
for x in range(10):
name = f"Label #{x+1}"
label = tk.Label(root, text=name)
label.pack(padx=10, pady=10)
label.bind("<B1-Motion>", show_widget)
root.mainloop()发布于 2021-01-20 03:43:40
我已经做了一些事情,比如跟踪特定小部件的进入/退出:
widget.bind("<Enter>", enter_func)
widget.bind("<Leave>", exit_func)你也许可以用它来做点有趣的事情
https://stackoverflow.com/questions/65798331
复制相似问题