AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

StringGrid nach Kriterien sortieren

Ein Thema von Subsidenz · begonnen am 28. Mai 2008 · letzter Beitrag vom 15. Jun 2008
 
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#12

Re: StringGrid nach Kriterien sortieren

  Alt 28. Mai 2008, 21:07
Die Spalten des Stringgrids sind TStrings. Das ist nicht weit von der TStringlist weg und die hat die Methode Sort. Genau das ist der Ansatz. Pseudocode :
Delphi-Quellcode:
MyStringList.Items := MyStringGrid.Cols [x];
MyStringList.Sort
..und wieder zurück ins Stringgrid
Jetzt ist wohl das Hauptproblem, dass die Zeilen ja wohl zusammenbleiben müssen und dann nützt die sortierte Spalte alleine auch nichts ? Tja, dann wirds schon nicht mehr trivial. Viele kennen nicht mal die Objects-Eigenschaft. Mir fällt tatsächlich dafür aber nur die Objects-Eigenschaft ein. Du packst die Zellen jeder ZEILE mit AddObject in ein TObject (ähnlich wie record zu behandeln). Dieses muss an der Stringliste (AddObject von TStringList -> F1) dranpappen. Jetzt wird diese sortiert und das zu jedem Stringlist-Item gehörende Objekt (quasi die vorherige Zeile) ist mitsortiert !! Das Objekt muss dann nur wieder in das Stringgrid hinein. Du kapito ? Mann ist das einfach. Ich muss gerade ein Stringgrid sortieren, bei dem das, was zusammengehört auf 1-5 Zeilen verteilt ist (in EINEM Stringgrid !). Da mache ich das ähnlich wegen der variablen Zeilen ist allerdings sogar TObjectList nötig. Bin schon 2 Wochen dran und immer noch nicht fertig damit.
Gruß
Hansa
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:47 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz