Win32API質問箱 Build24

このエントリーをはてなブックマークに追加
78デフォルトの名無しさん
ツールバーをサブクラス化したのですが、
そのサブクラスがWM_COMMANDだけを受け取ってくれません。
メッセージボックスでチェックしたところ他のは受け取っているようなんですが・・・

ツールバーはCreateWindowExで作成し、
サブクラス化した後、ボタンを追加しています。

どこか問題があるのでしょうか?
79デフォルトの名無しさん:04/11/01 12:24:52
>>78
WM_COMMANDを受け取るのは親ウインドウだろ。
ツールバーのクラスが親に投げているので、サブクラスで取れるわけないじゃん。
80デフォルトの名無しさん:04/11/01 12:27:53
>>78
親ウィンドウにWM_COMMANDが送信されてると思う。
81デフォルトの名無しさん:04/11/01 12:32:59
>>79-80
なるほど。
すいません、知りませんでした。
ツールバーのどのボタンが押されたかをサブクラスで知るにはどうしたらいいのでしょうか。
ウィンドウプロシージャを弄れないので、サブクラスで受け取らなきゃいけないんです。
82デフォルトの名無しさん:04/11/01 12:56:18
>>81
ボタンなんかとれません。ツールバーのは、実はボタンじゃないから。
SPYで見てみると、このことはわかります。
なので、ツールバーを持つウィンドウクラスを一個作ってラップするか、
ツールバーを自作してください。
83デフォルトの名無しさん:04/11/01 13:00:46
>>81
親ウィンドウをサブクラス化する手もあるね