Python / tkinter:事件:在小部件上通过鼠标调用函数

时间:2017-12-01 14:00:43

标签: python events button tkinter label

我想改进我的计划,我只是不知道如何。

当用户鼠标悬停在 tkinter 的小部件上时,我希望事件开始。

此...

button.bind("<Motion>", lambda eff: callback())

...正在运行,但用户需要移动鼠标才能调用该函数。

有没有办法启动,例如,当鼠标悬停在窗口小部件上时,每x秒启动一次该功能?

当鼠标悬停在按钮或标签上时,我需要它显示一个随按钮或标签文本不断变化的整数。

你有什么想法吗?

感谢您的关注,

的Lukas

1 个答案:

答案 0 :(得分:2)

您可以将函数绑定到<Enter>以在鼠标进入窗口小部件时触发函数,并且可以绑定到<Leave>以在其离开时触发。

<Enter>绑定可以运行一个函数,该函数使用after定期开始更新标签。 <Leave>绑定可以设置更新功能检查的标志,以便知道停止更新。

此网站上有许多关于使用after定期执行某些操作的问题和答案。例如,How to use the after method to make a callback run periodically?