ON_NOTIFY和ON_NOTIFY_EX

ON_NOTIFY和ON_NOTIFY_EX用来处理控件通知消息WM_NOTIFY 的宏。  

两者的形式是:ON_NOTIFY_EX(nCode,id,memberFxn)   
其中  nCode可以表示一个待处理的消息   
       id表示发送消息的窗口   
       memberFxn表示消息处理函数 ;两者的形式不一样:

ON_NOTIFY的是:          afx_msg   void  memberFxn(NMHDR*pNotifyStruct,LRESULT*result);   
ON_NOTIFY_EX的是:      afx_msg  BOOL  memberFxn(UINT id, NMHDR*pNotifyStruct,LRESULT*result);   


其中参数NMHDR的定义是:

typedef struct tagNMHDR {   
    HWND hwndFrom;  //发送消息的句柄   
    UINT_PTR idFrom;  //发送消息的控件的id   
    UINT code;  //通知消息相关代码   
} NMHDR;   

其中的NMHDR*也可以任意一个包含NMHDR的结构体指针   


两者的区别是:ON_NOTIFY_EX允许处理几个控件,当返回值是fasle的时候可以处理几个控件的相同消息

 

http://blog.csdn.net/fengshalangzi/article/details/5964143

你可能感兴趣的:(struct)