2017-12-01 12 views
0

私のプログラムを改善したいと思います。Python/tkinter:Events:ウィジェットでマウスで関数を呼び出します。

ユーザーのマウスがのtkinterのウィジェットを超えているときにイベントが開始されたがっています。

この...

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

が...働いているが、ユーザーは、通話機能のためにマウスを移動する必要があります。

たとえば、マウスがウィジェットの上にある間に関数をx秒ごとに開始する方法はありますか?

マウスがボタンまたはラベルの上にあるときにボタンまたはラベルのテキストとして常に変化する整数を表示する必要があります。

アイデアはありますか?あなたの注意のための

おかげで、

ルーカス

答えて

2

あなたはマウスがウィジェットに入ったときに機能をトリガする<Enter>に機能をバインドすることができ、そしてあなたはそれが離れたときにトリガする<Leave>に特異的に結合することができます。

<Enter>バインディングは、afterを使用して定期的にラベルの更新を開始する機能を実行できます。 <Leave>バインディングでは、更新機能が更新を停止することを知るためにチェックするフラグを設定できます。

afterを定期的に使用することに関するこのサイトに関する多くの質問と回答があります。たとえば、How to use the after method to make a callback run periodically?

関連する問題