Listview下标越界如何解决
下面这段代码会出现List index out of bounds(0),请问如何解决呢??
//---------------------------------添加数据到到数据库中-------------------------
procedure AddToData(ValID,ValZXDZ,ValFXDZ,ValNY,ValZJ,ValDZDL,ValFZDL,ValFZGL,
ValCD,ValKZDY,ValKZDL,ValKZGL,ValDrdy,ValZX,ValDate:String);
begin
with frmmain.ListReport.Items.Add do
begin
Caption:=ValID;
SubItems.Add(ValZXDZ);
SubItems.Add(ValFXDZ);
SubItems.Add(ValNY);
SubItems.Add(ValZJ);
SubItems.Add(ValDZDL);
SubItems.Add(ValFZDL);
SubItems.Add(ValFZGL);
SubItems.Add(ValCD);
SubItems.Add(ValKZDY);
SubItems.Add(ValKZDL);
SubItems.Add(ValKZGL);
SubItems.Add(ValDrdy);
SubItems.Add(ValZX);
SubItems.Add(ValDate);
end;
With DataMod.DaSouData.DataSet do
begin
Insert;
FieldByName('ID').AsString:=ValID;
FieldByName('ZXDZ').AsString:=ValZXDZ;
FieldByName('FXDZ').AsString:=ValFXDZ;
FieldByName('NY').AsString:=ValNY;
FieldByName('ZJ').AsString:=ValZJ;
FieldByName('DZDL').AsString:=ValDZDL;
FieldByName('FZDL').AsString:=ValFZDL;
FieldByName('FZGL').AsString:=ValFZGL;
FieldByName('CD').AsString:=ValCD;
FieldByName('KZDY').AsString:=ValKZDY;
FieldByName('KZDL').AsString:=ValKZDL;
FieldByName('KZGL').AsString:=ValKZGL;
FieldByName('DRDY').AsString:=ValDrdy;
FieldByName('ZX').AsString:=ValZX;
FieldByName('Date').AsString:=ValDate;
post;
end;
frmmain.ListReport.Items.Item[frmmain.ListReport.Items.Count-1].MakeVisible(False); //让ListView滚动到最后一项
end;