2016-12-02 8 views
0

私はダイアログボックスにCStatic派生コントロールのツールチップを表示しようとしています。MFC - CDialogExコントロールで使用されるCMFCToolTipCtrlのフォントを変更します。

私はすでにやった

  1. は私のCDialogExメンバーにCMFCToolTipCtrl項目を追加しました。
  2. 私はCMFCToolTipInfo構造体を指定し、それをCMFCToolTipCtrlアイテムコンストラクタの引数として渡しました。
  3. EnableToolTips()を呼び出します。私のCStaticExtsと私のCDialogExのメンバーです。
  4. "RelayEvent"を追加するCDialogExのPreTranslateMessageをオーバーライドしました。
  5. リソースエディタで「Notify:TRUE」を設定します。

私は部分的にカスタマイズされた方法(バルーンと背景色)でツールチップを表示することができましたが、今ではツールと同様に、フォントを拡大して大胆にし、最終的にアイコンを表示したいツールバーに表示されるヒント

CMFCToolTipCtrl項目の "SetFont"メソッドと "SetIcon"メソッドを呼び出そうとしましたが、機能しませんでした。

これは可能ですか?

答えて

0

CMFCToolTipCtrlで使用される通常のフォントは、MFC内のグローバルデータストアから取得されます(GetGlobalData() - > fontTooltipを参照)。このデータ構造体AFX_GLOBAL_DATAは、MFCの起動時に入力されます。 SetFontはここで何の効果もありません。

動作を変更する場合は、独自のCMFCToolTipCtrlクラスを作成してOnDrawLabelを上書きする必要があります。 MFCのソースがあるので、独自の実装を提供するのは簡単です。

関連する問題