用listviewctrl显示查询结果,这样设置listviewctrl的右击事件映射
BEGIN_MSG_MAP(CSetSMSDlg)
NOTIFY_HANDLER(IDC_LIST2, NM_RCLICK, OnRclick)
END_MSG_MAP()IDC_LIST2 是listviewctrl控件的ID, NM_RCLICK是通知的右击事件,OnRclick是函数;我是一直这样给listviewctrl添加右击事件的,今天在进行不同版本代码合并时,遇到了个纠结的问题,合并后的版本,listviewctrl右击事件怎么也不响应了,在NOTIFY_HANDLER(IDC_LIST2, NM_RCLICK, OnRclick)处设断点,也无法跟到。同样的代码,在自己的版本却可以,
想请教NOTIFY_HANDLER(IDC_LIST2, NM_RCLICK, OnRclick)的通知是从控件发送出来的吗? 用SPY++查找LISTVIEW的message也没有结果,对NOTIFY_HANDLER的机制不清楚,高手请教了!

解决方案 »

  1.   

    NM_RCLICK (list view) Notification
    --------------------------------------------------------------------------------
    Sent by a list-view control when the user clicks an item with the right mouse button. This notification message is sent in the form of a WM_NOTIFY message.
      

  2.   

    NOTIFY_HANDLER()是宏Defines an entry in a message map. NOTIFY_HANDLER( 
          id, 
          cd, 
          func  
    )
     
      

  3.   

    改用ON_NOTIFY试试ON_NOTIFY(NM_RCLICK, IDC_LIST2, OnRclick)
      

  4.   

    先谢部长了,但是工程用的是WTL的库,ON_NOTIFY不好使~