Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   CDS, Zeilen Sortieren (https://www.delphipraxis.net/179664-cds-zeilen-sortieren.html)

Luki206 23. Mär 2014 14:44

CDS, Zeilen Sortieren
 
Hi, wie kann man die Zeilen im ClientDataSet nach dem Alphabet sortieren? Also ich habe mir das so vorgestellt dass ich jetzt drei Spalten habe: Titel, Album und Interpret. Wenn ich jetzt auf Titel drücke soll nur die Spalte Titel sortiert werden aber so dass Interpret und Album noch stimmen. Geht das irgendwie von Delphi aus oder muss ich das in eine Schleife hängen und das für jede Zeile einzeln machen?
Danke
Luki :)

Uwe Raabe 23. Mär 2014 14:54

AW: CDS, Zeilen Sortieren
 
Zur Sortierung nach dem Feld "Titel" setzt du einfach

Delphi-Quellcode:
cds.IndexFieldNames := 'Titel';

Luki206 23. Mär 2014 15:15

AW: CDS, Zeilen Sortieren
 
Ok vielen Dank, geht es irgendwie dass man wenn man im DBGrid auf die Spalte klickt dass es dann Sortiert wird?
Edit: weil bei dem Onclick Ereignis habe ich schon etwas stehen..

Uwe Raabe 23. Mär 2014 15:44

AW: CDS, Zeilen Sortieren
 
Zitat:

Zitat von Luki206 (Beitrag 1253118)
Ok vielen Dank, geht es irgendwie dass man wenn man im DBGrid auf die Spalte klickt dass es dann Sortiert wird?
Edit: weil bei dem Onclick Ereignis habe ich schon etwas stehen..

Dann schreib doch einfach den Befehl dazu. Einen Automatismus dafür gibt es nicht.

Das DBGrid kennt über das verknüpfte DataSource nur das DataSet, weiß aber nicht, daß es ein ClientDataSet ist (eigentlich weiß es auch gar nicht, was das ist). Bei einem DataSet gibt es aber von Haus aus noch keine Sortierung.

Perlsau 23. Mär 2014 16:13

AW: CDS, Zeilen Sortieren
 
Zitat:

Zitat von Luki206 (Beitrag 1253118)
geht es irgendwie dass man wenn man im DBGrid auf die Spalte klickt dass es dann Sortiert wird?

Klar geht das. Du hast doch im DBGrid.OnTitleClick den Parameter Column:
Delphi-Quellcode:
Procedure TForm1.DBGrid1TitleClick(Column: TColumn);
begin
  MyClientDataset.IndexFieldNames := DBGrid1.Columns[Column.Index].FieldName;
end;

Luki206 23. Mär 2014 16:58

AW: CDS, Zeilen Sortieren
 
Ah ok, vielen Dank :thumb:

Uwe Raabe 23. Mär 2014 17:23

AW: CDS, Zeilen Sortieren
 
Zitat:

Zitat von Perlsau (Beitrag 1253123)
Zitat:

Zitat von Luki206 (Beitrag 1253118)
geht es irgendwie dass man wenn man im DBGrid auf die Spalte klickt dass es dann Sortiert wird?

Klar geht das. Du hast doch im DBGrid.OnTitleClick den Parameter Column:

Oh Mann, ich hatte natürlich blind angenommen, er meint OnTitleClick mit der Bemerkung, er hätte im OnClick schon was stehen... :wall:


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:32 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 by Thomas Breitkreuz