MFC列表控件CListCtrl使用方法示范
CListCtrl获取选中的某一行
POSITIONps=m_list.GetFirstSelectedItemPosition(); intnSel=m_list.GetNextSelectedItem(ps);//选中的哪行的索引(based0) //或 if(m_list.GetSelectedCount()<1) return; intnSel=m_list.GetSelectionMark();
CListCtrl控件失去焦点时仍保持高亮
1.头文件中添加变量m_nSelItem
intm_nSelItem;
2.为ListCtrl控件添加NM_KILLFOCUS(失去焦点)和NM_SETFOCUS(得到焦点)消息
手动添加代码如下:
头文件中添加声明
afx_msgvoidOnNMKillfocusList(NMHDR*pNMHDR,LRESULT*pResult);
afx_msgvoidOnNMSetfocusList(NMHDR*pNMHDR,LRESULT*pResult);
源文件中添加映射
ON_NOTIFY(NM_KILLFOCUS,IDC_LISTCTRL,OnNMKillfocusList)
ON_NOTIFY(NM_SETFOCUS,IDC_LISTCTRL,OnNMSetfocusList)
源文件中添加函数
voidCPageListView::OnNMKillfocusList(NMHDR*pNMHDR,LRESULT*pResult)
{
//TODO:在此添加控件通知处理程序代码
m_nSelItem=m_ListCtrl.GetSelectionMark();
m_ListCtrl.SetItemState(m_nSelItem,LVIS_DROPHILITED,LVIS_DROPHILITED);
*pResult=0;
}
voidCPageListView::OnNMSetfocusList(NMHDR*pNMHDR,LRESULT*pResult)
{
//TODO:在此添加控件通知处理程序代码
m_ListCtrl.SetItemState(m_nSelItem,FALSE,LVIF_STATE);
*pResult=0;
}
注意:AlwaysShowSelection属性一定要设为FALSE
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。
热门推荐
6 保研的祝福语简短
10 年轻20岁祝福语简短
11 朋友结婚祝福语信息简短
12 女孩婚礼贺卡祝福语简短
13 30段点歌简短祝福语
14 虎年春节祝福语图文简短
15 写给后妈祝福语大全简短
16 简短回复生日祝福语
17 校长送毕业祝福语简短
18 毕业立体贺卡祝福语简短