永发信息网

VS2012的MFC程序如何编辑右键菜单选项

答案:2  悬赏:80  手机版
解决时间 2021-02-11 02:47
  • 提问者网友:蓝莓格格巫
  • 2021-02-10 12:30
VC 6.0中的component and control选项在VS2012 中哪里去了
最佳答案
  • 五星知识达人网友:山河有幸埋战骨
  • 2021-02-10 13:55
在VC++6.0中,在project -》addtoproject-》……之后进行选择就可以为工程添加一个单击右键弹出菜单功能,但是在VS中没有Pop-Up Menu组件,右键菜单需要手动添加。添加方法如下:
1、在资源视图中添加所需的右键菜单
2、选择相应的类,单文档时选中View类在属性中添加WM_CONTEXTMENU消息
3、在OnContextMenu添加如下代码
void CMenu3View::OnContextMenu(CWnd* , CPoint point)
{
    // TODO: 在此处添加消息处理程序代码
    if (point.x == -1 && point.y == -1)
    {
        CRect rect;
        GetClientRect(rect);
        ClientToScreen(rect);
        point = rect.TopLeft();
        point.Offset(5, 5);
    }
    CMenu menu;
    VERIFY(menu.LoadMenu(CG_IDR_POPUP_TYPING_TEST_VIEW));        //CG_IDR_POPUP_TYPING_TEST_VIEW为菜单ID
    CMenu* pPopup = menu.GetSubMenu(0);
    ASSERT(pPopup != NULL);
    CWnd* pWndPopupOwner = this;
    while (pWndPopupOwner->GetStyle() & WS_CHILD) 
    pWndPopupOwner = pWndPopupOwner->GetParent();
    pPopup->TrackPopupMenu(TPM_LEFTALIGN | TPM_RIGHTBUTTON, point.x, point.y,pWndPopupOwner);
}
全部回答
  • 1楼网友:掌灯师
  • 2021-02-10 15:24
建议在控制面板里面点“添加/删除功能 ” 试试,修复一下,把mfc勾选上就好了。  估计你没有把atl/mfc的头文件装上,也就是上图中的“用于c++的microsoft 基础类 ”
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯