動的に配置したコントロールでイベントメッセージを受け取る方法 – プログラミング – Home

動的に配置したコントロールでイベントメ...
 
通知
すべてクリア

[解決済] 動的に配置したコントロールでイベントメッセージを受け取る方法


えふ
 えふ
(@えふ)
ゲスト
結合: 23年前
投稿: 11
Topic starter  

Win2K, VC++ 6.0 SP5, MFC にて開発しております。
ダイアログベースのアプリを作成して、ボタンを押下したタイミングで動的にCStaticの派生コ
ントロール(CMyStaticクラス)をダイアログ上に配置するようにしました。
ここで、このCMyStaticオブジェクトを左クリックした時にある動作をさせようと、
CMyStatic.cpp内で以下のコードを追加しました。

void CMyStatic::OnLButtonDown(UINT nFlags, CPoint point)
{
CStatic::OnLButtonDown(nFlags, point);

....
}

しかし、このコードにブレークポイントを設定してデバッグしてみたところ、左クリックをして
もこのコードに飛んできません。
おそらく、ダイアログクラスのOnLButtonDown()に飛んでいるのだと思われますが、これを
CMyStatic::OnLButtonDown()に飛ばすにはどうすれば良いのでしょうか?
SubclassDlgItem()を使うのかと思いCMyStaticをCreateした後にSubclassDlgItem()を追加
したのですがうまくいきませんでした。
他にやらなければならないことはありますでしょうか?
ご助言いただければ幸いです。


引用未解決
トピックタグ
dairygoods
 dairygoods
(@dairygoods)
ゲスト
結合: 23年前
投稿: 1421
 

スタイルにSS_NOTIFYを追加すれば通知されると思います。


返信引用
えふ
 えふ
(@えふ)
ゲスト
結合: 23年前
投稿: 11
Topic starter  

ありがとうございます。
SS_NOTIFYを追加することで解決しました。
言われてみて、CButtonでBS_NOTIFYというのがあるのを思い出しました。
CStatic::Create()のヘルプからStaticスタイルをずっと眺めてたのですが、それらしいもの
がなく悩んでおりました。
しかし、CStaticの概要にしっかりと書かれてますね。
お騒がせしました。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました