CreatePopupMenu

2018/12/20

CreatePopupMenuは、ポップアップメニューを作成するWindowsAPI・・・。

CreatePopupMenu 関数

メインとなるメニュー項目のどれかをクリックすると、下に出てくるメニューをポップアップメニュー(またはドロップダウンメニュー)という・・・。
これ以外にも、このポップアップメニュー項目の右などに表示される子メニュー(サブメニュー)や、右クリックで表示されるコンテキストメニュー(ショートカットメニュー)なども作成できる・・・。

今回は3つのメニュー項目それぞれクリックすると、ポップアップメニュー項目が3つずつ表示されるプログラムを作る・・・。

まず、

HMENU型の変数を4つ用意・・・。
ポップアップメニューもHMENU型を使う・・・。

メインとなるメニューをCreateMenuで作る・・・。

CreatePopupMenuでポップアップメニューを3つ作る・・・。

AppendMenuでポップアップメニューhPopupMenu1にポップアップメニュー項目となる3つ"Item1-1", "Item1-2", "Item1-3"を追加する・・・。

hPopupMenu2, hPopupMenu3も同様に・・・。

本来リソースIDを指定するところに、hPopupMenu1, hPopupMenu2, hPopupMenu3をそれぞれ指定し、hMenuにポップアップメニューを追加していく・・・。なので、

メインメニュー項目のリソースIDは不要・・・。
このときフラグでMF_POPUPを指定する・・・。

あとは、

CreateWindowにhMenuを指定・・・。

f:id:BG1:20150524224943p:plain

このようにクリックするとポップアップメニューの項目3つが表示された・・・。

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