Also ich hab ebend mal schnell ein Listview auf eine Form gezogen, FullDrag auf True, ViewStyle auf vsReport, ein paar Spalten (Anzahl, Einheit, Beschreibung, Einzelpreis und Gesamtpreis) hinzugefüht und einen Button mit dem ich folgendes mache:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var Item:TListItem;
anzahl,preis:integer;
begin
item := listview1.Items.add;
anzahl:=strtoint(InputBox('Eingabe','Anzahl',''));
Item.Caption:=inttostr(anzahl);;
Item.Subitems.Add(InputBox('Eingabe','Einheit',''));
Item.Subitems.Add(InputBox('Eingabe','Beschreibung',''));
preis:=strtoint(InputBox('Eingabe','Preis',''));
Item.Subitems.Add(inttostr(preis));
Item.Subitems.Add(inttostr(anzahl*preis));
end;
Und siehe da selbst wenn ich die Spalten verschiebe landen die Daten in der richtigen Spalte!
Vielleicht hast du einen Fehler in deiner "Einfügen"-Procedure?