我给CListCtrl添加了一个消息NM_SETFOCUS添加代码POSITION pos =m_dormlist(列表变量).GetFirstSelectedItemPosition();我只有每次对表进行刷新后才能改变pos 的值。如何一选定(不用重新显示列表)就可以把选定的位置传递给pos?

解决方案 »

  1.   

    如何一选定
    --------------
    你说的选定是不是指通过鼠标点中某一项来选中
    是的话,就不能判断NM_SETFOCUS,这是控件获得焦点触发的事件
    不是点中触发的事件
    点中的话,判断NM_CLICK
      

  2.   

    明白了  ,看来又要给你了!我想问下今天第一个问题,不使用updatedata()怎样得到float的值?
      

  3.   

    选中某项最好通过 LVN_ITEMCHANGED 中判断 
    BOOL check = m_ListCtrl.GetCheck(pNMListView->iItem);
    NM_CLICK 鼠标点击
    但是还有可能使用键盘来选中或取消选中