关于ListCtrl的有关问题,好久了还是没想明白,求大家帮忙
关于ListCtrl的问题,好久了还是没想明白,求大家帮忙?
我现在做了2个ListCtrl,1和2,还有一个添加按钮和三格的状态栏,按添加按钮的时候将1中的添加到2中.
现在要实现如下功能:
1.按添加按钮之后,焦点要变到2中添加的那个Item上。如果已经加了,直接把焦点变到2中那个已经加上的Item上。
2.修改2中已选中的Item的名字,信息栏的第二列信息保持与原始名字一样。
3.修改过名字的Item,重复添加的时候直接把焦点变到那个已经加上的Item上。
非常感谢大家帮忙!!!
------解决方案--------------------
用SetItemState就可以把焦点加转移到某个Item上了,
------解决方案--------------------
1.得到当前列表选项
在列表控件的 LVN_ITEMCHANGED消息函数中
NM_LISTVIEW* pNMListView = (NM_LISTVIEW*)pNMHDR;
m_curSel = pNMListView-> iItem;
if(m_curSel != -1)
2.设置当前列表选项
m_list.SetItemState(index,LVIS_SELECTED | LVIS_FOCUSED, LVIF_STATE); //设置index项作为当前选择项
我现在做了2个ListCtrl,1和2,还有一个添加按钮和三格的状态栏,按添加按钮的时候将1中的添加到2中.
现在要实现如下功能:
1.按添加按钮之后,焦点要变到2中添加的那个Item上。如果已经加了,直接把焦点变到2中那个已经加上的Item上。
2.修改2中已选中的Item的名字,信息栏的第二列信息保持与原始名字一样。
3.修改过名字的Item,重复添加的时候直接把焦点变到那个已经加上的Item上。
非常感谢大家帮忙!!!
------解决方案--------------------
用SetItemState就可以把焦点加转移到某个Item上了,
------解决方案--------------------
1.得到当前列表选项
在列表控件的 LVN_ITEMCHANGED消息函数中
NM_LISTVIEW* pNMListView = (NM_LISTVIEW*)pNMHDR;
m_curSel = pNMListView-> iItem;
if(m_curSel != -1)
2.设置当前列表选项
m_list.SetItemState(index,LVIS_SELECTED | LVIS_FOCUSED, LVIF_STATE); //设置index项作为当前选择项