はじめまして。
MFC VC++6.0 WindowsXPです。
ボタンコントロール上で右クリックするとモーダルダイアログを表示させようとしているのですが、どうやったらいいのか分かりません。
回答よろしくお願いします。
その操作は Windows のユーザーインターフェイス標準に合致してない、つまり、
フツーのユーザーは
「特定ボタンコントロール上で右クリックしたら、他の場所で右クリックしたのと違う動作をする」
とは思いつきもしないと思うのだが、それでもやりたいわけ?
簡単に出来ない=するべきではないから難しくなっている、と考えよう。
不可能ではないが、すべきでないと思うわけだが、何か標準 UI に反したい理由でもある?
tetrapodさんに賛成。
まぁ、ツールバー上のコントロールなんかは、右クリックを
親にリフレクトすることもありますけど、これは明示的に処理を
移管している状態ですね。
通常のボタンは右クリックを親に報告しませんから、結構大変な
実装になりそうです。
とりあえずWM_MOUSEACTIVATEは来るみたいなので、そこから
何が起こったか類推するしかないかもしれません。
WM_CONTEXTMENUが来るようだったらそれも使えるかもしれません。
>tetrapod様
>仲澤@失業者様
ご返答ありがとうございます。
普通はしないそうなのですね。
WM_CONTEXTMENUで試してみたらできたので、こちらを使わせてもらうことにしました。
ありがとうございました。