![]() |
Re: Listview spalten addieren
War auch nicht an dich, sondern den TE gerichtet
|
Re: Listview spalten addieren
Zitat:
der jetzige Code:
Delphi-Quellcode:
Und ja ich habe 4 Spalten
Umsatz_gesamt := 0;
for i := 0 to liv_transfersalltime.Items.Count - 1 do begin Umsatz := StrToInt(ZahlohnePunkte(liv_transfersalltime.Items[i].SubItems[1])) - StrToInt(ZahlohnePunkte(liv_transfersalltime.Items[i].SubItems[0])); liv_transfersalltime.Items[i].SubItems[2] := IntToStr(Umsatz); inc(Umsatz_gesamt,Umsatz); Umsatz_gesamt := Umsatz_gesamt + Umsatz; end; Name, Einkaufspreis, Verkaufspreis, Umsatz Die Listview wird mit Hilfe dieser procedure aus einer Datei gefüllt:
Delphi-Quellcode:
Bsp-Datei:
procedure ListViewLoadFromFile(Filename : String; ListView : TsListView);
{Copyright Christoph Duwald 2005} var TextFile,TextFile2 : TStringList; NewListItem: TListItem; i,x: integer; begin try ListView.Clear; TextFile:= TStringList.Create; TextFile2:= TStringList.Create; TextFile.LoadFromFile(Filename); //ListView aus der Datei laden. TextFile2.Delimiter:='#'; //Trennzeichen, wie beim Speichern angegeben for i:=0 to TextFile.Count-1 do // Geht alle Zeilen durch (ohne Überschriften) begin TextFile2.DelimitedText:=TextFile.Strings[i]; //Erste Zeile aus der gespeicherten Datei in die Richtigen Spalten schreiben NewListItem := ListView.Items.Add; //Neues Item anlegen NewListItem.ImageIndex:=StrToInt(TextFile2.Strings[0]); //Index des Images für diese Zeile NewListItem.Caption :=TextFile2.Strings[1]; //Erste Spalte for x:=2 to TextFile2.Count-1 do //Geht die restlichen Spalten durch begin NewListItem.SubItems.Add(TextFile2.Strings[x]); //Spalten mit dem text aus der Datei füllen end; end; finally TextFile.Free; TextFile2.Free; end; end;
Code:
Vlt hängt es damit zusammen?
0#Badstuber#940.000#2.223.600
0#Breno#310.000#676.200 EDIT: Die Subitems[0] und [1] stimmen, habe es mir in einem testmemo ausgeben lassen und eine Spalte 4 existiert auch definitiv! |
Re: Listview spalten addieren
Wo soll die 4. Spalte denn herkommen? Ich sehe da einen ImageIndex, einen Namen und 2 Zahlen, damit komme ich auf 3 Spalten.
[edit]Aber gut:
Delphi-Quellcode:
So müsste es immer passen.[/edit]
Umsatz_gesamt := 0;
for i := 0 to liv_transfersalltime.Items.Count - 1 do begin Umsatz := StrToInt(ZahlohnePunkte(liv_transfersalltime.Items[i].SubItems[1])) - StrToInt(ZahlohnePunkte(liv_transfersalltime.Items[i].SubItems[0])); if liv_transfersalltime.Items[i].SubItems.Count < 3 then liv_transfersalltime.Items[i].SubItems.Add(IntToStr(Umsatz)) else liv_transfersalltime.Items[i].SubItems[2] := IntToStr(Umsatz); inc(Umsatz_gesamt,Umsatz); // doppelt gemoppelt: Umsatz_gesamt := Umsatz_gesamt + Umsatz; end; |
Re: Listview spalten addieren
kA was du meinst, wie gesagt 4 Spalten:
Name, Einkaufspreis, Verkaufspreis, Umsatz Aus der Datei werden Name, Einkaufspreis und Verkaufspreis in die Listview geladen, die Umsatzspalte (Spalte4!!!) bleibt dabei leer! Wie in meinem ersten Beitrag bereits angemerkt und durch gerade erneutes Testen stelle ich fest, dass das ganze funktioniert wenn in der Umsatzspalte bereits etwas steht!!! Also hat die Listview (speziell liv_transfersalltime.Items[i].SubItems[2] := IntToStr(Umsatz); ) irgend ein Problem mit der leeren Spalte4 oder nicht??!?! EDIT: Zitat:
aaaah ok, jetzt gehts :D EDIT2: hat sich erledigt xD |
Re: Listview spalten addieren
Beim Import, werden dann aber nur 3 Spalten erstellt.
|
Re: Listview spalten addieren
Hallo,
also nach meiner unmaßgeblichen Meinung füllst Du dein Listview mit dem gezeigten Textfile, was aber nur eine Cption und 2 (zwei) SubItems befüllt. Häng doch einfach eine DummySpalte (#_) hinten dran und schau mal was passiert. Ciao Frank |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:49 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz