代码改变世界

主对话框右键弹出菜单

2012-11-02 10:33  龙成  阅读(204)  评论(0编辑  收藏  举报
 1 void CtestMFCDlg::OnNMRClickList2(NMHDR *pNMHDR, LRESULT *pResult)
 2 {
 3     // TODO: 在此添加控件通知处理程序代码
 4     *pResult = 0;
 5     CListCtrl *CList =(CListCtrl *) GetDlgItem(IDC_LIST2); 
 6 
 7     CMenu menu ,* pSubMenu; //定义下面要用到的cmenu对象
 8     menu.LoadMenu(IDR_MENU1); //装载自定义的右键菜单
 9 
10     //获取第一个弹出菜单,所以第一个菜单必须有子菜单
11     pSubMenu = menu.GetSubMenu(0); 
12 
13     CPoint oPoint; //定义一个用于确定光标位置的位置
14     GetCursorPos( &oPoint); //获取当前光标的位置,以便使得菜单可以跟随光标
15 
16 
17 
18     //在指定位置显示弹出菜单
19     pSubMenu->TrackPopupMenu (TPM_LEFTALIGN, oPoint.x, oPoint.y, this); //第四个为传递的参数
20 
21 }


在对话框中添加右键的消息响应。