掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
子ダイアログ間を移動できるようにしつつ、ENTERキーでボタンを押下するには? (ID:71876)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
色々な状態が想定できるので具体的には答えられませんが、 親DLGは、子DLGをCreate()したことはわかっているはずなので、 発生したWM_COMMANDの内、BN_CLICKEDの場合で、かつ自分の 直近の子供でないことが明らかな場合は、子DLGのWM_COMMAND ハンドラを呼び出すのが一番簡単だと思われます。 直接呼び出しても大丈夫な場合もありますが、心配なら PostMessage()しても良いと思います。 一般にWM_COMMANDがコントロールから直接発生した場合は、lParamに このコントロールのHWNDが入っていると考えられます。この場合 「このHWNDの親が自分でない場合」という判定でもOKかもしれません。 上記方法が一般的かどうかはわかりませんが、原則として 「子のWM_COMMANDは直近の親が処理すべき」と考えます。 つまり、ENTERでのWM_COMMANDの発生はその親に対して行うべきなので あって、たとえWS_EX_CONTROLPARENTであろうと、親の親に送られて しまうのはWindowsの処理がおかしいので、やむを得ずこの様に処理する という認識です。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.