1

Qt アプリケーションのヘルプ Web ページを追加したいと考えています。ユーザーは、Qt::WhatsThis の「ツールチップ」を使用して、トピックに関する説明と Web ページへの URL を表示できます。WhatsthisTooltips を Qt Designer で編集し、言語に依存しないようにしています。

ここで、フィルタリング用の「LinkFilter」クラスを作成し、それをビュークラスにインストールして、QEvent::WhatsThisClicked イベントに反応します。これはうまくいきます。

今、私はアプリケーションですべての QEvent::WhatsThisClicked をキャッチしますが、本当にすべてのダイアログ/ビュー/アクション/ウィジェットにインストールするのは本当に面倒です。これはある種のグローバルな eventHandler です。「LinkEvent」クラスをインストールできますか? これを解決するための素敵な Qt スタイルの方法が必要です。

EventFilter をインストールするために、私はこのビデオチュートリアルhttp://youtu.be/DHgbYxpZkbgに強く従いました

4

1 に答える 1

3

http://qt-project.org/doc/qt-4.8/qapplication.html#notify

QApplication基本的に、この関数をサブクラス化してオーバーライドする必要があります。次に、それが探しているイベントのタイプであるかどうかを確認し、それに応じて行動できます。

于 2013-03-19T17:32:07.540 に答える