文章类型: VC&C++
关键词: 如何获取CListCtrl当前选中的行
内容摘要: 如何获取CListCtrl当前选中的行

如何获取CListCtrl当前选中的行

2017/1/5 11:07:44    来源:apple    阅读:

方法一:  单选的情况下

GetNextItem(-1,LVIS_SELECTED); 

方法二:单选的情况下

如果只允许单选,只需要调用成员函数GetSelectionMark()就可以获取选中的行号,然后你再调用GetItemText()就可以获取选中行的文本。

方法三: 可以多选的情况下 

CString str;

POSITION pos=list.GetFirstSelectedItemPosition(); //pos选中的首行位置

if(pss==NULL)

        AfxMessageBox(L"no item were selected!");

else

{

          while(pos)   //如果选择多行

          {

                int nIdx=-1;

                nIdx= list.GetNextSelectedItem(pos);

        

                if(nIdx >=0&&nIdx<list.GetItemCount())

                {

                        str =list.GetItemText(nIdx,0);

                }

        }

}

方法四: 可以多选的情况下

    CArray <CString,CString> selectItemsID;

int selectedNum = list.GetSelectedCount();

int itemCount = list.GetItemCount();

if (selectedNum==0)

{

MessageBox("请选择一个记录器!", "错误", MB_ICONERROR|MB_OK);

return;

}


j=0;

for (i=0;i<itemCount;i++)

{

if (list.GetItemState(i,LVIS_SELECTED)==LVIS_SELECTED)

{

selectItemsID.Add(list.GetItemText(i,0));

j++;

}

}

↑ 上一篇文章:函数用法CListCtrl::GetNextItem 关键词:函数用法CListCtrl::GetNextItem 发布日期:2017/1/5 11:00:05
↓ 下一篇文章:VC++文件夹的创建和文件夹的删除总结 关键词:VC++文件夹的创建和文件夹的删除总结 发布日期:2017/1/5 15:16:35
相关目录:.NETVC&C++软件开发
我要评论
正在加载评论信息......