怎样在visual studio的MFC中创建鼠标右键弹出菜单?

andywangcn 2009-12-01 10:16:53
怎样在visual studio的MFC中创建鼠标右键弹出菜单?请指教操作方法
...全文
245 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
andywangcn 2010-01-22
  • 打赏
  • 举报
回复
3Q
snowying2008 2009-12-01
  • 打赏
  • 举报
回复
动态创建有两种方法,一种你可以先创建菜单资源,然后加载这个菜单,在弹出
另一种是完全动态创建
CMenu menu;
menu.CreatePopupMenu();
menu.AppendMenu(MF_STRING|MF_ENABLED, ID_PREVIEM_ITEM, (_T("***")));
menu.AppendMenu(MF_STRING|MF_ENABLED, ID_EDIT_ITEM, (_T("***")));
menu.TrackPopupMenu(TPM_LEFTALIGN | TPM_RIGHTBUTTON, pt.x, pt.y,this);
用户 昵称 2009-12-01
  • 打赏
  • 举报
回复
你是想在自己的程序中创建吗?如果是的话,在mouse rbutton down的事件中,

void xxxxxxxxx::OnRButtonDown(UINT nFlags, CPoint point) 
{
// TODO: Add your message handler code here and/or call default

CMenu popmenu;

UINT e;
CPoint pt;

popmenu.CreatePopupMenu();

//添加菜单项目
popmenu.AppendMenu(0, ID_EDIT_UNDO, "Undo(&U)\tCtrl+Z");
GetCursorPos( &pt );
popmenu.TrackPopupMenu(TPM_RIGHTBUTTON, pt.x, pt.y, this);
popmenu.DestroyMenu();

xxxxxxxxxx::OnRButtonDown(nFlags, point);

16,551

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Creator Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧