怎样在鼠标右键中加入一个菜单? 我做了一个程序,现在遇到的一个难题是:我用鼠标右键点击一个目录,在出来的菜单中怎样加入一个选项,可以得到他的目录。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 响应消息WM_CONTEXTMENU然后添加代码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(IDR_YOU_CONTEXT_MENU));//载入快捷菜单资源 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); vc++ 如何屏蔽flash插件里面的右键菜单,并替换为自定义菜单。 关于浮点数的一些疑问 问一个关于接受缓冲的小问题 CFile怎样创建一个隐藏属性的文件? 需要在win98下测试,但是没机器 CFile类如何实现字符串在文件的中间位置插入? vc运行时候的问题 在线等待,用代码怎样改变CStaic控件的大小与位置 怎么没有THML组件? WIN7 怎样安装UVNC_MD_SDK 哪位windows AD是什么吗? 求助:VC++中如何用变量的通用形式:
然后添加代码
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(IDR_YOU_CONTEXT_MENU));//载入快捷菜单资源
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);