窗口响应右键弹出菜单

使用上下文菜单  
     
  Windows   95应用程序支持单击鼠标右键弹出上下文菜单的功能,这可通过处理 WM_CONTEXTMENU消息来实现。当在窗口内单击鼠标右键时,窗口将接收到  WM_CONTEXTMENU消息,在该消息的处理函数内装载上下文菜单,并调用  CMenu::TrackPopupMenu函数便可显示上下文菜单。CMenu::TrackPopupMenu函数的  
  原型如下:  
   
  BOOL   TrackPopupMenu( 
                                            UINT   nFlags,//   显示和选取方式标志  
                                            int   x,  int   y,   //   显示菜单的左上角坐标    
                                            CWnd*   pWnd,   //   接收菜单操作的窗口对象    
                                            LPCRECT   lpRect   =   NULL //   敏感区域 
                                                 );        
    
  为了使用上下文菜单,首先应在资源编辑器中编制好上下文菜单,假设上下文菜单名 为IDR_MENU_CONTEXT;其次,用ClassWizard给窗口增加处理消息WM_CONTEXTMENU的 函数OnContextMenu,以及各菜单命令的处理函数;然后编写相应的代码。    
   
  下面的是OnContextMenu函数的代码实例:    
  void   CEllipseWndDlg::OnContextMenu(CWnd*   pWnd,   CPoint   point)      
  {    
  CMenu   menu;    
  //   装入菜单    
  menu.LoadMenu(IDR_MENU_CONTEXT);    
  //   显示菜单    
  menu.GetSubMenu(0)->TrackPopupMenu(    
  TPM_LEFTALIGN|TPM_LEFTBUTTON|TPM_RIGHTBUTTON,      
  point.x,   point.y,   this);    
  }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值