listview列头前的图标 我现在想在一个基于ListView的视图类(Report样式)列头加一个小图标,点一下这个图标响应一个事件,然后再点击一下响应一个相反的事件,图标变成另外一个图标,我有列头加checkbox的示例,而且checkbox打√或者不打√不能及时响应,谁做个这种类似的功能麻烦指教一下,或者有没有什么示例小程序的...... 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 http://www.codeproject.com/KB/miscctrl/gridctrl.aspxgridctrl是最佳选择!楼主自己下载,有例子,开源! 响应LVN_COLUMNCLICK消息,然后消息处理函数中用GetItem()函数获取到LPNMLISTVIEW结构体.修改这个结构体的iImage成员,再用SetItem()更改属性.void CMFCDlg::OnLvnColumnclickList1(NMHDR *pNMHDR, LRESULT *pResult){ LPNMLISTVIEW pNMLV = reinterpret_cast<LPNMLISTVIEW>(pNMHDR); HDITEM hdi = {0}; hdi.mask = HDI_IMAGE; //只获取Image属性 CListCtrl* lv = (CListCtrl*)GetDlgItem(IDC_LIST1); lv->GetHeaderCtrl()->GetItem(pNMLV->iSubItem, &hdi); hdi.iImage = 0; //更改图标 lv->GetHeaderCtrl()->SetItem(pNMLV->iSubItem, &hdi); *pResult = 0;} MFC CSocket 编程? CRichEditCtrl ole插入gif动态表情 关于电子签名的几个问题,请大家指点,谢谢 请问命令行如何上网啊? 有人使用过Progree Dialog吗? 怎么在数据链路层直接读取网卡的以太网帧? 高分。谁能告诉我这是怎么回事,请尽量详细点 关于sendmessage的 关于文本内容获取的问题。 关于使用IDispatch的奇怪的问题,可能你不曾遇到过 如何得到CTreeCtrl的层次码 关于socket连接池的小问题
gridctrl是最佳选择!
楼主自己下载,有例子,开源!
修改这个结构体的iImage成员,再用SetItem()更改属性.void CMFCDlg::OnLvnColumnclickList1(NMHDR *pNMHDR, LRESULT *pResult)
{
LPNMLISTVIEW pNMLV = reinterpret_cast<LPNMLISTVIEW>(pNMHDR);
HDITEM hdi = {0};
hdi.mask = HDI_IMAGE; //只获取Image属性
CListCtrl* lv = (CListCtrl*)GetDlgItem(IDC_LIST1); lv->GetHeaderCtrl()->GetItem(pNMLV->iSubItem, &hdi);
hdi.iImage = 0; //更改图标 lv->GetHeaderCtrl()->SetItem(pNMLV->iSubItem, &hdi);
*pResult = 0;
}