CWnd::SetMenu

CWnd::SetMenuで、ウィンドウにメニューをセットする。

CWnd クラス | Microsoft Learn

CWinApp_.cppで、

またウィンドウクラスにメニューリソースを指定。
CFrameWnd_.hで、

CMenuオブジェクトポインタm_pMenuを用意。
CFrameWnd_.cppで、

CFrameWnd_::OnItem1_1でメニューの差し替え。
SetMenu(NULL)でメニューを外す。
Win32APIのDestroyMenuで、外したメニューハンドルを解放し、新しいメニューを作成して付け替えてる。

Item1-1を押すと、
Item1-1を押すと、

Item1-1を押すと、

Item1ごとItem2に差し替わる。
Item1ごとItem2に差し替わる。

Item1ごとItem2に差し替わる。

Sample/mfc/CWnd/SetMenu/src/CWnd at master · bg1bgst333/Sample · GitHub