Python 2.7、pyqt ライブラリを使用して単純なテキスト エディターを作成しています。基本的に、ユーザーがテキスト エディターで単語を選択したときに単語の意味を表示したいと考えています。
これまでのところ、カーソルの下にある単語を検出し、辞書で調べて (print ステートメントを使用して) 意味を返すことができるので、根性を働かせることができることがわかります。
私の問題は、2 ミリ秒以内に消えないツールチップに単語の意味を表示することです。これまでのところ、私はこれを使用しています:
QtGui.QToolTip.showText(QtGui.QCursor.pos(), tool_tip_text)
理想的には、選択が行われた場所のすぐ上に意味を表示したいのですが、これまでのところ、ツールチップが非常に速く表示されるため、カーソルの下の単語の意味を読むことさえできません. ポップアップしてすぐに消えます。少なくとも 5 秒間、またはユーザーが単語の選択を解除するまで、ツールチップを表示したままにする方法を誰かが共有できますか?
私は QHELPEVENT を使用していません (helpevent がどのようにトリガーされるかはよくわかりません)lookup_word_in_dictionary()
単語が選択されたときに関数を呼び出すだけです。
どんなサンプルでも大歓迎です。