CPtrList FindIndex()位置返回相同的值

时间:2019-02-01 08:22:23

标签: linked-list mfc

我有PtrList并通过提供索引号来查找位置,并获取详细信息并将其添加到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行相同的文本。

0 个答案:

没有答案