2

マウスオーバー時に CMFCButton にツールチップを表示させたい。OnInitDialog で SetToolTip() メソッドを使用すると機能しません

CMFCButton* bt = ((CMFCButton*)GetDlgItem(IDC_MFCBUTTON1)); 
bt->SetTooltip(_T("tooltip")); 

しかし、このコードを別のボタンのクリック ハンドルのようなメッセージ ハンドル関数に入れると機能します。私が欲しいのは、ダイアログが作成されたときに CMFCButton がツールチップを表示できるようにすることです。これらのコードをどこに配置すればよいですか?

======================== ところで、Property ビューで設定したツールチップ テキストは、ほとんどの場合機能しません。

4

2 に答える 2

0

基本クラスの OnInitDialog() を呼び出しましたか? 要点は、コントロールに対して SetToolTip() を呼び出す前にコントロールを作成する必要があるということです。デバッガーで OnInitDialog() にステップインし、SetToolTip() を呼び出した時点でコントロールの m_hWnd に値があるかどうかを確認します。

于 2013-03-11T16:53:19.013 に答える