ListCtrl中OnItemchangedList(NMHDR* pNMHDR, LRESULT* pResult) 参数的意思? 那位大虾帮我解释一下在ListCtrl的OnItemchangedList1(NMHDR* pNMHDR, LRESULT* pResult) 事件中,两个参数的意思,以及如何使用他们? 谢谢!! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 NMHDR相当于一类结构的指针。看一下NMHDR的定义:typedef struct tagNMHDR { HWND hwndFrom; UINT idFrom; UINT code; } NMHDR;再看一下NMLISTVIEW的定义:typedef struct tagNMLISTVIEW{ NMHDR hdr; int iItem; int iSubItem; UINT uNewState; UINT uOldState; UINT uChanged; POINT ptAction; LPARAM lParam;} NMLISTVIEW, FAR *LPNMLISTVIEW;可见,NMLISTVIEW是完全包含NMHDR这个结构的,因为前三个成员长度是相同的。所以可以通过强制转换来获取NMLISTVIEW结构指针。同样,例如,typedef struct tagNMHEADER{ NMHDR hdr; int iItem; int iButton; HDITEM FAR* pitem;} NMHEADER, FAR* LPNMHEADER;这个结构也是完全包含NMHDR这个结构的。所以NMHDR象一个基类,参数用NMHDR指针,因此我们可以随意转换成其它结构的指针来获取更多的信息。至于LRESULT* pResult,我现在看到的例子中,好像没有什么用。应该是一个返回值,而不是输入值。 MSDN:LRESULT A 32-bit value returned from a window procedure or callback function. 像素值获取不对啊 谁帮我看看这坐标 就3行r,g,b 跪求解答 在线等啊~~~ 怎么将Recordset中的数据保存为Excel文件?谢谢 分割窗口出现的问题! OnItemexpanding不能进入函数体 请教在VC中使用InternetOpen函数编译时出现连接错误该怎么处理 如何得到两机器间的连接速度 请教各位侯捷的书该怎么看? 弱弱的问:为什么? 关于MFC与WIN32 API 关于sendmassage问题 请教 怎样添加OnCustomDraw(NMHDR *pNMHDR,LRESULT *pLResult);
看一下NMHDR的定义:
typedef struct tagNMHDR {
HWND hwndFrom;
UINT idFrom;
UINT code;
} NMHDR;
再看一下NMLISTVIEW的定义:
typedef struct tagNMLISTVIEW{
NMHDR hdr;
int iItem;
int iSubItem;
UINT uNewState;
UINT uOldState;
UINT uChanged;
POINT ptAction;
LPARAM lParam;
} NMLISTVIEW, FAR *LPNMLISTVIEW;可见,NMLISTVIEW是完全包含NMHDR这个结构的,因为前三个成员长度是相同的。所以可以通过强制转换来获取NMLISTVIEW结构指针。同样,例如,typedef struct tagNMHEADER{
NMHDR hdr;
int iItem;
int iButton;
HDITEM FAR* pitem;
} NMHEADER, FAR* LPNMHEADER;这个结构也是完全包含NMHDR这个结构的。所以NMHDR象一个基类,参数用NMHDR指针,因此我们可以随意转换成其它结构的指针来获取更多的信息。至于LRESULT* pResult,我现在看到的例子中,好像没有什么用。应该是一个返回值,而不是输入值。
LRESULT A 32-bit value returned from a window procedure or callback function.