查看 msdn 另外,在一般的 sdk 书中都有范例,
eg. windows 程序设计.

解决方案 »

  1.   

    CString pItemOpen="&Open";
    CString pItemSave="&Save";
    CString pItemSeparator="";
    CString pItemExit="&Exit";
    int     nFlags=0;
    CPoint  mpt;CMenu *m_pMenu;
    m_pMenu = new CMenu;
    if(!m_pMenu->CreatePopupMenu())
    {
       AppendMenu(nFlags, IDM_OPEN, (LPCTSTR)pItemOpen);
       AppendMenu(nFlags,IDM_SAVE,(LPCTSTR)pItemSave);
       AppendMenu(nFlages|MF_SEPARATOR, 0, (LPCTSTR)pItemSeparator);
       AppendMenu(nFlages,IDM_EXIT,(LPCTSTR)pItemExit);
     
     mpt=point;
    ClientToScreen(&mpt);
    m_pMenu->TrackPopupMenu(TPM_LEFTALIGN|TPM_LEFTBUTTON, mpt.x, mpt.y, this);
    }
    else
    {
     MessageBox("Could not Create the menu","error",MB_OK);
    }
    m_pMenu->DestroyMenu();
      

  2.   

    对了,其中IDM_OPEN,IDM_SAVE,IDM_EXIT,需要自己在定义,
      

  3.   

    to programhunter 如果在里面加入下一级菜单应该怎么做?
      

  4.   

    http://www.csdn.net/Develop/read_article.asp?id=9413