「ボタン押させろー」
ボタンにアクションを付ける
ボタンを押しても何も起こらないと寂しいので、
メッセージボックスが立ち上がるアクションを発生させてみます。
この節の内容を実装すると、くまーボタンを押した際に、
こんな感じでメッセージボックスが立ち上がるようになります
「また意味の分からんメッセージだな」
KumaBarBandを修正する
ボタンを押したメッセージは、その親Windowにメッセージが行きます
今回のソースで行くと、KumaBarBandのところですね
KumaBarBandに処理は書きたくないので、CHAIN_MSG_MAP_MEMBERを使って、
CToolbarWindowクラスにメッセージが届くようにします
あと、CHAIN_MSG_MAP_MEMBERを使った場合で、且つ子供がWM_CREATE時の処理をしている場合は、
親のWM_CREATE時に子供をCREATEしないと、
「IsWindow失敗したぞコラ」
と怒られるようなので(親とメッセージ共有しようと思ったら、まぁ、そうなるか)、
CToolbarWindowの生成をKumaBarBandのWM_CREATE時に移します
こんな感じで
・KumaBarBand.h
・KumaBarBand.cpp
ToolbarWindowを修正する
ボタンが押された時(WM_COMMANDが送信される)の動作を書きます
MESSAGE_HANDLER(WM_COMMAND, OnCommand) みたく書いても良いのですが、
個人的に、COMMAND_ID_HANDLERの方が好きなので、そちらを使います
こんな感じで
・ToolbarWindow.h
・ToolbarWindow.cpp
ビルド
ビルドしてIEを立ち上げると、ボタンに反応するようになります
「だいぶツールバーっぽくなってきたな」
確かに、なんとなく出来てきた感はありますね
次節ではよりそれっぽく見えるように、ボタンに画像を付けてみます
コメントスペース