问题1:我现在想设置 第0 行 为选中
代码如下:
..........................................................m_list1.SetFocus();
m_list1.SetItemState(0, LVIS_FOCUSED, LVIS_FOCUSED);
m_list1.SetItemState(0, LVIS_SELECTED, LVIS_SELECTED);
但是 当我执行这段程序前 如果鼠标选中了其他行
不管m_list1有没有失去焦点, 执行这段程序后
会有两行显示被选中,一行是我设置的 也就是第0行 ,另一行 是刚才鼠标选中的
怎么样刚才鼠标选中的不被选中(即不高亮)???list 的样式为 m_list.SetExtendedStyle(LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES);
report的形式问题2: 为什么 SetHotItem(0); 不行呢? 0 行不被选中呢
代码如下:
..........................................................m_list1.SetFocus();
m_list1.SetItemState(0, LVIS_FOCUSED, LVIS_FOCUSED);
m_list1.SetItemState(0, LVIS_SELECTED, LVIS_SELECTED);
但是 当我执行这段程序前 如果鼠标选中了其他行
不管m_list1有没有失去焦点, 执行这段程序后
会有两行显示被选中,一行是我设置的 也就是第0行 ,另一行 是刚才鼠标选中的
怎么样刚才鼠标选中的不被选中(即不高亮)???list 的样式为 m_list.SetExtendedStyle(LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES);
report的形式问题2: 为什么 SetHotItem(0); 不行呢? 0 行不被选中呢
先把选中的项清除:
POSITION pos = m_lv.GetFirstSelectedItemPosition();
while(pos)
m_lv.SetItemState(m_lv.GetNextSelectedItem(pos), 0, LVIS_SELECTED);sethotitem倒是不知怎么用
if(selnow>=0){
m_list1.SetSel(selnow,false);//将原选项不选
}
m_list1.SetCurSel(0);
2。SetHotItem设置item,从界面显示上看并未选中,只是item的文字颜色有区别,不会背景高亮,不知道你说的不行是什么意思?