在CListCtrl中应如何响应CheckBox事件?(高分求助!!!) CListCtrl带有CheckBox,我想让CheckBox在选中的时候执行一个操作,应该怎么办?十万火急!!! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 没有专门的消息,要做的话,响应mouse click消息,然后检查各个CheckBox。 //消息映射BEGIN_MESSAGE_MAP(CInfoDownloadService, CPropertyPage) //{{AFX_MSG_MAP(CInfoDownloadService) ON_NOTIFY(HDN_ITEMCHANGED, IDC_LIST_TASK, OnItemchangedListTask) //}}AFX_MSG_MAPEND_MESSAGE_MAP()//声明afx_msg void OnItemchangedListTask(NMHDR* pNMHDR, LRESULT* pResult);实现void CDialog1::OnItemchangedListTask(NMHDR* pNMHDR, LRESULT* pResult) { HD_NOTIFY *phdn = (HD_NOTIFY *) pNMHDR; NM_LISTVIEW* pNMListView = (NM_LISTVIEW*)pNMHDR; if(pNMListView->iItem>=0) { if(m_list.GetCheck(pNMListView->iItem)){ //被选中 }else{ } } *pResult = 0;} HDN_ITEMCHANGED消息不是这个意思,是listctrl在report状态下的列的标题头的消息。 在HDN_ITEMCHANGED中判断是不行的,我刚试过了,它不是响应checkbox事件 只能响应NM_CLICK,然后检查各个checkbox。 感谢Crob(我干这么帅~~~)提供的代码,可是似乎还是不行请问pcman1990:怎么检查各个checkbox的状态? 好像NM_CLICK只能相应鼠标在CListCtrl中的单击事件啊? 搞定pcman1990说的对谢谢各位指点 问题是响应发生在check状态改变之前,而我需要改变后的check状态,该怎么办? 多字节字符集转UTF8部分文字出现“?” 打开文件夹对话框和读取里面的所有二进制数据该怎么弄? 【vc6.0】用CStatic标签加载一个ico图标,使其成为图片标签。 如何更改ncb文件的路径? 如何看 <windows核心编程> CxImag设置问题, 无法识别头文件 ximage.h 请教个问题!!!高手进! 怎样打开*.chm文件 豫編譯中 \ 的問題 我的自绘cbutton为什么icon show出不来 碰撞检测算法 转换函数?
BEGIN_MESSAGE_MAP(CInfoDownloadService, CPropertyPage)
//{{AFX_MSG_MAP(CInfoDownloadService)
ON_NOTIFY(HDN_ITEMCHANGED, IDC_LIST_TASK, OnItemchangedListTask)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()//声明
afx_msg void OnItemchangedListTask(NMHDR* pNMHDR, LRESULT* pResult);实现
void CDialog1::OnItemchangedListTask(NMHDR* pNMHDR, LRESULT* pResult)
{
HD_NOTIFY *phdn = (HD_NOTIFY *) pNMHDR; NM_LISTVIEW* pNMListView = (NM_LISTVIEW*)pNMHDR;
if(pNMListView->iItem>=0)
{
if(m_list.GetCheck(pNMListView->iItem)){
//被选中
}else{ }
}
*pResult = 0;
}
请问pcman1990:
怎么检查各个checkbox的状态?
pcman1990说的对
谢谢各位指点