右击事件代码

解决方案 »

  1.   

    void CTraderenView::OnNMRclickList1(NMHDR *pNMHDR, LRESULT *pResult)
    {
    // TODO: 在此添加控件通知处理程序代码
    // TODO: Add your control notification handler code here
    NM_LISTVIEW* pNMListView = (NM_LISTVIEW*)pNMHDR;
    if(pNMListView->iItem == -1)
    {
    return;
    } CPoint oPoint;
    CMenu menu ; GetCursorPos( &oPoint);
    menu.LoadMenu(IDR_MENU1);//装载自定义的右键菜单 CMenu* pSubMenu;//定义下面要用到的cmenu对象
    pSubMenu = menu.GetSubMenu(0);//获取第一个弹出菜单,所以第一个菜单必须有子菜单
    //    pSubMenu->EnableMenuItem(IDM_REMOVE_FROM_KILL_LIST, MF_DISABLED | MF_GRAYED);
    pSubMenu->TrackPopupMenu (TPM_LEFTALIGN, oPoint.x, oPoint.y, this); //在指定位置显示弹出菜单 *pResult = 0;
      

  2.   

    void   CTraderenView::OnNMRclickList1(NMHDR   *pNMHDR,   LRESULT   *pResult) 

    //   TODO:   在此添加控件通知处理程序代码 
    //   TODO:   Add   your   control   notification   handler   code   here 
    NM_LISTVIEW*   pNMListView   =   (NM_LISTVIEW*)pNMHDR; 
    if(pNMListView-> iItem   ==   -1) 

    return; 
    } CPoint   oPoint; 
    CMenu   menu   ; GetCursorPos(   &oPoint); 
    menu.LoadMenu(IDR_MENU1);//装载自定义的右键菜单 CMenu*   pSubMenu;//定义下面要用到的cmenu对象 
    pSubMenu   =   menu.GetSubMenu(0);//获取第一个弹出菜单,所以第一个菜单必须有子菜单 
    //         pSubMenu-> EnableMenuItem(IDM_REMOVE_FROM_KILL_LIST,   MF_DISABLED   ¦   MF_GRAYED); 
    pSubMenu-> TrackPopupMenu   (TPM_LEFTALIGN,   oPoint.x,   oPoint.y,   this);   //在指定位置显示弹出菜单 *pResult   =   0;