2008. 10. 3. 20:21

Menu


 void CTestDlg::OnContextMenu(CWnd* pWnd, CPoint point)
{
      // TODO: Add your message handler code here
      CMenu menu;
      CMenu *pMenu;
      menu.LoadMenu(IDR_MENU1);
      pMenu = menu.GetSubMenu(0);

    

      if( val == 1 )  // val은 전역변수
     {
          pMenu->EnableMenuItem( ID_MENUITEM32771, MF_GRAYED | MF_DISABLED);
      }
     else if( val == 2 )
     {
         pMenu->EnableMenuItem( ID_MENUITEM32771, MF_ENABLED);
     }

  pMenu->TrackPopupMenu(TPM_LEFTALIGN|TPM_RIGHTBUTTON, point.x, point.y, AfxGetMainWnd());

}

 

 // 각 메뉴의 command이벤트 발생시 호출 함수

void CTestDlg::OnMenuitem32771()
{
 val = 1;   // val은 전역변수
}

 

void CTestDlg::OnMenuitem32772()
{
 // TODO: Add your command handler code here

 val = 2; // val은 전역변수
}

void CTestDlg::OnMenuitem32773()
{
 AfxMessageBox("t3");
}