AppendMenu

AppendMenuは、メニュー項目を追加するWindowsAPI・・・。

AppendMenu function (Windows)

InsertMenuItemに取って代わられたものの、現在も使うことができる・・・。

CreateMenuで作成したメニューには何も項目が無いので、これでメニュー項目を追加し、ウィンドウにメニューをセットすれば、メニューは表示される・・・。
今回は、WM_CREATE時ではなく、CreateWindowを呼ぶ前にメニュー作成処理をする・・・。

CreateMenuで作成したら、

AppendMenuで、"Item1", "Item2", "Item3", という項目を追加する・・・。
追加したいメニューのハンドル、項目の種類を表すフラグ、項目のリソースID、そして項目の表示名・・・。
MF_ENABLEDは通常の選択可能な表示状態、MF_STRINGは項目が文字列だということ・・・。'|'によるOR演算で指定・・・。
項目のリソースIDだが、数字だけでリソースそのものは不要である・・・。

上の方でインクルードしているが、

リソースIDのマクロを定義しているだけ・・・。リソースファイルは無い・・・。

このように項目を追加したhMenuを、

CreateMenuの9個目の引数で指定する・・・。

f:id:BG1:20150523182935p:plain

ウィンドウの上の部分に3つのメニュー項目が表示された・・・。
ただ、このメインとなるメニューの下に表示されるポップアップメニューと呼ばれるものがないので、見た目いまひとつという感じ・・・。

Sample/AppendMenu.cpp at master · bg1bgst333/Sample · GitHub
Sample/resource.h at master · bg1bgst333/Sample · GitHub