问题
I have a ListViewCtrl
in a WTL program.
I need to get the items selected by the user(multiple selection).
I can only het the count of selected items using GetSelectedCount()
.
GetSelectedItem()
doesnt work with multiple selection.
回答1:
Have a look here:
CListViewCtrl ListView = ...
for(INT nItem = ListView.GetNextItem(-1, LVNI_SELECTED); nItem >= 0; nItem = ListView.GetNextItem(nItem, LVNI_SELECTED))
{
// Here you go with nItem
}
回答2:
Now this is just the way that I did it:
for(int j=0;j<list.GetCount();j++)
{
if(list.GetSel(j))
{
list.GetText(j,strTemp);
doSomething(strTemp); //maybe put in an array
}
}
回答3:
shortest way:
int nItem = -1;
while ( (nItem = m_lvList.GetNextItem(nItem, LVIS_SELECTED)) != -1 )
{
...
}
来源:https://stackoverflow.com/questions/12933477/how-to-get-items-from-a-listviewctrl-multiple-selection-in-wtl