2011-06-21 3 views
3

Python/Tkinterでアプリケーションを書くとき、私はときどき (HyperlinkManagerクラスで定義された、http://effbot.org/zone/tkinter-text-hyperlink.htmの数)のハイパーリンクを持つページを持っています。tkinter:リンク時のマウスの遅れ

多くのリンクが存在すると、リンク上にマウスを乗せたときにマウスが少し遅れることに気付きました。 これはTkinterのアプリでは典型的なものか、それとも対策があるのか​​ご存じですか?

アレッサンドロ

+2

遅れが消えるので、彼らは確かに犯人... 'デフ_enter(自己、イベント)です: self.text.config(カーソル= "hand2")デフ _leave(self、event): self.text.config(cursor = "") ' – alessandro

+2

+1:自己回答はstackoverflowに適しています。 Tkinterはtkを囲むラッパーであり、tkのテキストウィジェットはその出入りのバインディングにおいて比較的準最適です。あなたのニーズに応じて、キャンバスのようなもの、あるいはPyGTKのようなものがあるかもしれません。 Tkは10年前にはきれいだったが、その年齢を示し始めている。 – msw

+1

@msw:なぜテキストウィジェットは、入力および退室のバインディングにおいて最適ではないと言えますか?私は1000ユニークなタグを持つテキストウィジェットを作成することができます。それぞれユニークなバインディングを入力して終了することができ、完璧に機能します(すべてのタグを作成するのに少し時間がかかります)。 –

答えて

1

タグのTkinterのの取り扱いには特に遅さを入力しないとHyperlinkManagerクラスの実装では非効率性があるかもしれませんが、私の知るタグの合理的な数のバインディングを残してあります。そして、確かに、それらの出入りのイベントであなたがすることは、いくつかの遅れを導入する可能性があります。入退室は非常に迅速に行えるため、コードが遅い場合は遅れが生じることがあります。

あなたが見ているこの遅れを示す小さなサンプルプログラムを提供できますか?私は_enter/_leave方法をコメントする場合