Entwickler-Ecke
Sonstiges (Delphi) - ListView Spalte sortieren
Sahroma - Mo 15.06.15 17:02
Titel: ListView Spalte sortieren
Hi zusammen,
habe da ein kleines Problem. Und zwar habe ich in meiner ListView 3 Spalten. Habe es bisher so das wenn man auf eine Spalte klickt von A nach Z sortiert wird. Aber wenn man nochmals auf die Spalte klickt sortiert er nicht in die andere Richtung (von Z nach A). Habe ich irgendetwas übersehen bzw. vergessen?
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23:
| procedure TVolltextsuche.LvErgebnisColumnClick(Sender: TObject; Column: TListColumn); begin if Column.Caption = '' then exit; if lvErgebnis.Items.Count > 0 then begin ColumnToSort := Column.Index; if ColumnToSort = LastSorted then begin SortDirection := 1 - SortDirection; if Column.ImageIndex = 0 then Column.ImageIndex := 1 else Column.ImageIndex := 0; end else begin if LastSorted <> -1 then lvErgebnis.Columns[LastSorted].ImageIndex := -1; SortDirection := 0; Column.ImageIndex := 1; end; LastSorted := ColumnToSort; (Sender as TCustomListView).AlphaSort; end; end; |
Gruß
Sahroma
Delete - Mo 15.06.15 21:26
- Nachträglich durch die Entwickler-Ecke gelöscht -
jaenicke - Di 16.06.15 07:30
Das sehe ich anders, bei einer Listview macht es keinen Sinn extern zu sortieren, da das unnötig langsam ist und das Sortieren ja schon vorgesehen ist.
Zum Problem:
Wie sieht denn deine Vergleichsmethode aus?
Ich arbeite immer mit 1 oder -1 als Faktor, sprich multipliziere zum Umkehren mit -1 und multipliziere das Ergebnis des Vergleichs ebenfalls einfach mit dem Faktor.
Delete - Di 16.06.15 18:42
- Nachträglich durch die Entwickler-Ecke gelöscht -
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!