0

我正在尝试制作一个脚本,其中有例如 9 个小部件(按钮、标签......),当我单击并按住任何小部件并拖动到另一个小部件时,我想要两个小部件都重新着色(resp。我拖过的所有小部件),直到我释放鼠标按钮。

from Tkinter import *

root = Tk()

def recolor(event):
    global ButtonList
    event.widget.config(bg="red")

    return


ButtonList=["b0","b1","b2","b3","b4","b5","b5","b6","b7","b8"]

i = 0

while i < 9:
    ButtonList[i] = Label(root, text = i, width = 4, height = 2)
    ButtonList[i].grid(row = i%3, column = i/3)

    ButtonList[i].bind("<Enter>", recolor) 

    i += 1

root.mainloop()

该脚本仅对我单击的小部件重新着色,并在释放按钮后对<Enter>事件做出反应。<Enter>当我按住鼠标按钮时,如何使脚本对所有小部件的事件做出反应?

我为我的英语道歉。

4

1 回答 1

2

当绑定触发时,该widget属性将始终设置为处理事件的小部件。要在鼠标下找到小部件,您需要使用方法winfo_ contains

于 2013-01-21T14:59:05.507 回答