헐... 고생고생 해서 찾았네...
more..더 보시려면
CWindow g_hWndMenuBar;
SHMENUBARINFO mbi;
memset(&mbi, 0, sizeof(SHMENUBARINFO));
mbi.cbSize = sizeof(SHMENUBARINFO);
mbi.hwndParent = hWnd;
mbi.nToolBarId = IDR_MENU;
mbi.hInstRes = g_hInst;
if (!SHCreateMenuBar(&mbi))
{
g_hWndMenuBar = NULL;
}
else
{
g_hWndMenuBar = mbi.hwndMB;
}
메뉴이름 바꾸기
TBBUTTONINFO tbbi;
// Change title of menu
memset(&tbbi,0,sizeof(tbbi));
tbbi.cbSize = sizeof(tbbi);
tbbi.dwMask = TBIF_TEXT;
tbbi.pszText = L"Renamed";
SendMessage(SHFindMenuBar(hWnd),
TB_SETBUTTONINFO,
IDM_HELP,
(LPARAM)&tbbi);
DrawMenuBar(g_hWndMenuBar);
메뉴 옵션 체크
hMenuMB = (HWND)SHFindMenuBar(hWnd);
hMenu = (HMENU) SendMessage(hMenuMB, SHCMBM_GETSUBMENU,0,IDM_HELP);
if (menu_state)
{
CheckMenuItem(hMenu,
ID_MENU_CHECK,
MF_BYCOMMAND|MF_CHECKED);
}
else
{
CheckMenuItem(hMenu,
ID_MENU_CHECK,
MF_BYCOMMAND|MF_UNCHECKED);
}
메뉴 아이템 텍스트 바꾸기
// Rename a menu item (by deleting it and recreating it)
hMenuMB = (HWND)SHFindMenuBar(hWnd);
hMenu = (HMENU) SendMessage(hMenuMB, SHCMBM_GETSUBMENU,0,IDM_HELP);
DeleteMenu(hMenu,2,MF_BYPOSITION);
InsertMenu(hMenu,2,MF_BYPOSITION, ID_MENU_RENAME,L"Changed!");
Posted by nurgoori

