이 QList를 채울 때 QStandardItems의 Qlist에 문제가 있습니다. 이것은 Qt Creator의 오류 메시지입니다. QList :: operator []의 ASSERT 오류 : "인덱스가 범위를 벗어났습니다."QStandardItem 문제
이것은 내 코드이지만 임시적으로 img는 모든 반복을 변경합니다.
for(int i=0;i<4;i++)
{
QList <QStandardItem*> itemCountryFlagTab;
QImage img =QImage(":/country/DataBase/country_flags/us.gif");
itemCountryFlagTab.reserve(5);
itemCountryFlagTab[i]->setData(QVariant(QPixmap::fromImage(img)), Qt::DecorationRole);
modelTraceRoute.setItem(i, 4, itemCountryFlagTab[i]);
}
오류가 발생한 행 (디버거 내부의 스택 추적 참조)은 무엇입니까? –
itemCountryFlagTab [i] -> setData (QVariant (QPixmap :: fromImage (img)), Qt :: DecorationRole); –
QStandardItem을 사용하기 전에 먼저 작성하는 것이 좋습니다. 죄송하지만이 코드는 정말 이상하고 잘못되었습니다. 그리고 그런데'reserve '는 포인터 배열의 내부 버퍼에만 영향을 미치므로 외부에서 ('reserve'를 호출 한 후 컨테이너의 크기를 확인하는 것이 아니라) 여기에 기대하는대로 작동하지 않습니다. – OnWhenReady