右键弹出菜单

转载 2017年01月03日 16:15:52

算法:

第一步:增加组件

组件和控件:

Project / Add to project / Components and controls

选择VC++ components里面的Pop-up Menu;

选择CMenuView下面的

CG_IDR_POPUP_MENU_VIEW

这个是ID号,你可以修改的;

在资源里面会增加一个菜单,只有一个子菜单abc(名字随便,不显示的)

编辑子菜单项:显示IDM_SHOW,退出IDM_EXIT

★注意:用下面这个函数可以手动创建弹出菜单:

CMenu::TrackPopupMenu

BOOL TrackPopupMenu( UINT nFlags, int x, int y, CWnd* pWnd, LPCRECT lpRect = NULL );

第二步:在View中添加WM_RBUTTONDOWN消息对应函数

void CMenuView::OnRButtonDown(UINT nFlags, CPoint point)

{

      // TODO: Add your message handler code here and/or call default

     

      CView::OnRButtonDown(nFlags, point);

}

第三步:编写响应函数中的程序;

     S1:加载弹出菜单;

            CMenu menu;

             menu.LoadMenu(IDR_MENU1);

     S2:获得索引号为0的子菜单指针;

          CMenu *pPopup=menu.GetSubMenu(0);

     S3:转换坐标系,从客户区坐标到屏幕坐标的转换;

      ClientToScreen(&point);

     S4:弹出菜单

      pPopup->TrackPopupMenu(TPM_LEFTALIGN | TPM_RIGHTBUTTON, point.x, point.y,this);

     S5:结束

 

★其中this表示view,那么view类能响应菜单命令;如果想mainframe来响应菜单命令,则this改为GetParent();

 

 

★完整菜单如下:

void CMenuView::OnRButtonDown(UINT nFlags, CPoint point)

{

      // TODO: Add your message handler code here and/or call default

      //S1:加载弹出菜单

      CMenu menu;

      menu.LoadMenu(IDR_MENU1);

 

      //S2:获得索引号为0的子菜单,在本例子里就一个;

      CMenu *pPopup=menu.GetSubMenu(0);

 

      //S3:转换坐标系,从客户区坐标到屏幕坐标的转换;

      ClientToScreen(&point);

 

      //S4:弹出菜单

      pPopup->TrackPopupMenu(TPM_LEFTALIGN | TPM_RIGHTBUTTON, point.x, point.y, this);

 

      CView::OnRButtonDown(nFlags, point);

}

 

为显示和退出子菜单项增加命令响应函数,方法和以前一样,此处略讲;

右键 弹出 菜单 特效

  • 2010年02月08日 10:20
  • 7KB
  • 下载

VC实现右键弹出菜单的功能

  • 2009年05月31日 15:33
  • 36KB
  • 下载

如何自定义创建windows的右键弹出菜单(C++)

在进行windows编程时,很多人都会想到使用自定义的邮件弹出菜单。先上代码 实现文件: //---------------------------------------------------...

添加JTree的右键弹出菜单

  • 2008年12月01日 15:01
  • 1KB
  • 下载

js实现右键弹出多级菜单特效

转自:http://www.zzjs.net/html/2656.html 右击鼠标弹出四级导航菜单,可自定义菜单内容和数量。 代码如下: 站长特效 js实现右键...

实例9 鼠标右键弹出菜单

  • 2012年11月02日 14:36
  • 25KB
  • 下载

delphi TDbGrid 右键 PopupMenu 菜单只在有数据的地方弹出

====================================================== 注:本文源代码点此下载 =============================...

MFC右键弹出菜单

  • 2012年10月10日 11:26
  • 2.17MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:右键弹出菜单
举报原因:
原因补充:

(最多只允许输入30个字)