CListCtrl中如何知道当前选择已改变?
CListCtrl中如何知道当前选择已改变?
楼主HowUCan(提前考虑风险,否则总是救火)2002-11-22 20:27:25 在 VC/MFC / 界面 提问 单选的情况。
如果用户用鼠标点,有个Click事件,但通过键盘(比如方向键)改变当前选择行时,我就不知怎么才能获得通知。 问题点数:100、回复次数:6Top
1 楼lsgt(天下第七)回复于 2002-11-22 20:32:30 得分 100
LVN_ITEMCHANGED消息.如下:
void CMsgListCtrl::OnItemchanged(NMHDR* pNMHDR, LRESULT* pResult)
{
NM_LISTVIEW* pNMListView = (NM_LISTVIEW*)pNMHDR;
// TODO: Add your control notification handler code here
int index=pNMListView->iItem;
if(index==-1)return;
::SendMessage(GetOwner()->GetSafeHwnd(),
WM_MSGLIST_NOTIFY,NM_MSGITEM_CLICK,(LPARAM)GetItemData(index));
*pResult = 0;
}Top
2 楼youngrin(阳光照耀)回复于 2002-11-22 21:19:37 得分 0
WM_MSGLIST_NOTIFY,NM_MSGITEM_CLICK好像写错了吧???Top
3 楼lsgt(天下第七)回复于 2002-11-22 22:47:29 得分 0
不会啊,那个是从我已经发布的程序里COPY下来的.Top
4 楼lsgt(天下第七)回复于 2002-11-22 22:49:44 得分 0
再说那俩都是自己定义的,怎么会存在反了呢?Top
5 楼lsgt(天下第七)回复于 2002-11-22 22:51:05 得分 0
啊,看错了,你是说写错了,不是说写反了.
那杀是一个自定义的消息码,怎么会写错?当然如果和定义的时候写得不一样自然就错了.:)Top
6 楼RomanticProgrammer() 兰企鹅||南极俺最帅 ()回复于 2002-11-22 23:20:57 得分 0
学习.Top
-
相关文章
2秒记住本站域名
玩过泡泡龙吗?Readygo?Go! 再加上.Com.Cn的后缀,那就是大名小顶的readygo.com.cn
