MFC2015. 1. 16. 11:18

메뉴아이템 추가


CMenu    subPop;
CMenu*    pMenu;


subPop.CreatePopupMenu();
subPop.AppendMenu(MF_STRING, 1000, _T("Menu1"));
subPop.AppendMenu(MF_STRING, 1001, _T("Menu2"));
subPop.AppendMenu(MF_STRING, 1002, _T("Menu3"));


pMenu = GetMenu();
pMenu->InsertMenu(1, MF_POPUP, (UINT)subPop.Detach(), _T("Test Menu"));

DrawMenuBar();



메뉴 핸들러


BEGIN_MESSAGE_MAP(CMyDlg, CDialogEx)

    ON_COMMAND_RANGE(1000, 1002, &CMyDlg::OnMenuHandler)

END_MESSAGE_MAP()


void CMyDlg::OnMenuHandler(UINT nId)

{

if(nId == 1000)

  AfxMessageBox(_T("Menu1을 선택하셨습니다."));

else if(nId == 1001)

  AfxMessageBox(_T("Menu2를 선택하셨습니다."));

else if(nId == 1002)

  AfxMessageBox(_T("Menu3을 선택하셨습니다."));

}



메뉴아이템 삭제


CMenu*    pMenu = GetMenu();

pMenu->DeleteMenu(1, MF_BYPOSITION);

DrawMenuBar();




메뉴 아이템을 추가하거나 삭제한 후에는 DrawMenuBar();를 호출하는 것 잊지 마세요.




Posted by 못생긴나무