Hallo,
für folgendes finde ich keine Lösung:
1. Ich möchte gerne automatisch ein Klick auf die erste Column durchführen lassen (dann wird es alp. Sortiert).
2. In einer ListView stehen (vsReport) untereinander im ersten Column Wörter.
Diese soll per Schleife mit der nechsten Zeile und weiteren verglichen werden. Sollte die nechste Zeile gleich
sein dann muss die nechste Zeile im ListView gelöscht werden und auf der momentant stehende
in der ersten Subitem die stehende Zahl mit 1 addiert werden - und im 2. Feld Prozent (2 Komma) vom gesamt mit 100%
errechnet werden.
ZB: meinWort - 2 - 23,45
2 so oft kam das Wort vor
23,45 das sind in Prozent
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34:
| var i, gesamt : integer; s, s2 : string; AItem : TListItem; begin
gesamt := Listview1.items.Count;
for i := 0 to Listview1.items.Count - 1 do begin s := listview1.Items[i].caption; if listview1.Items.count < i then begin if CompareText(s, listview1.Items[i+1].caption) = 0 then begin AITem := ListView1.Items[i]; s2 := AITEM.SubItems[0].text;
AITEM.SubItems[0].text := inttostr(strtoint(s2) + 1);
s2 := AITEM.SubItems[1].text; AITEM.SubItems[1].text := inttostr(gesamt div strtoint(s2));
AItem.Free; end;
listview1.Items[i+1].delete; end;
end; |