问题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 行不被选中呢

解决方案 »

  1.   

    多选,www.vcfan.com or www.vchelp.net 好象有类似的,你看看。
      

  2.   

    给listctrl加上Single Selection(LVS_SINGLESEL)样式,即让它只能单选。否则只能
    先把选中的项清除:
    POSITION pos = m_lv.GetFirstSelectedItemPosition();
    while(pos)
    m_lv.SetItemState(m_lv.GetNextSelectedItem(pos), 0, LVIS_SELECTED);sethotitem倒是不知怎么用
      

  3.   

    int selnow=m_list1.GetCurSel();
    if(selnow>=0){
        m_list1.SetSel(selnow,false);//将原选项不选
    }
    m_list1.SetCurSel(0);
      

  4.   

    1。设置ListCtrl的single selection属性
    2。SetHotItem设置item,从界面显示上看并未选中,只是item的文字颜色有区别,不会背景高亮,不知道你说的不行是什么意思?
      

  5.   

    楼上的  是 listCtrl 不是 listbox大哥
      

  6.   

    To :blackblue(跌跌撞撞) ( ) 可是 我看到颜色 也没什么变化
      

  7.   

    设置成单选  还是不行的如果你点任意一行的第一项后, 在执行程序还有有两个Item 被选中阿