Einzelnen Beitrag anzeigen

Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.252 Beiträge
 
Delphi 2006 Professional
 
#2

Re: DBGrid sortieren nach Spalte und Ab- oder Aufwärts

  Alt 19. Nov 2003, 11:04
Hai,

ich habe da noch eine Idee.

Die Sortierreihenfolge wird nur geändert wenn mann nocheinmal auf die selbe Titelspalte klickt.
Ansonsten wird bei selber reihenfolge nur das Sortierfeld geändert.

bSortOrder und sSortColumn sollten natürlich im OnCreate initialisiert werden.

Delphi-Quellcode:
var
  bSortOrder: Boolean;
  sSortColumn: string;

procedure TForm1.DBGrid1TitleClick(Column: TColumn);
begin
  if Column.FieldName <> sSortColumn then
  begin
    sSortColumn := Column.FieldName;
  end
  else
  begin
    bSortOrder := not bSortOrder;
  end;
  ADODataSet1.Close;
  if bSortOrder then
  begin
    ADODataSet1.CommandText := 'SELECT * FROM Table ORDER BY ' + sSortColumn;
  end
  else
  begin
    ADODataSet1.CommandText := 'SELECT * FROM Table ORDER BY ' + sSortColumn + ' DESC';
  end;
  ADODataSet1.Open;
end;
[edit=Matze]Code formatiert. Mfg, Matze[/edit]
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat