У меня есть PtrList и я нахожу Postion, указав номер индекса, получу детали и добавлю его в элемент управления List.Но каждый раз, когда он вызывает, POSITION показывает одно и то же значение, и поэтому listctrl имеет один и тот же текст.
int count = GetItemCount(); //Count of ListControl
POSITION Pos;
SAlarmInfo* pAlrmDisp;
{
Pos = AlarmList.FindIndex(count); //AlarmList has 15 counts
if(Pos != NULL)
pAlrmDisp = (SAlarmInfo*)AlarmList.GetAt(Pos);
else{
return;
}
}
.......
nItem = InsertItem(insertindexno, "Ack" );
SetItemText( nItem, 1, "2" );
SetItemText( nItem, 2, "ACT" );
SetItemText( nItem, 3, pAlrmDisp->tAlmTime.Format("%d %H:%M:%S") );
Число listctrl увеличивается на 1, но Pos возвращает то же значение, поэтому pAlrmDisp имеет то же значение.В моем listctrl 15 строк одинаковых текстов.