Hola Jheysson13, puedes utilizar el evento OnTittleClick del DbGrid y la propiedad Sort de tu DataSet, un ejemplo con los componentes Ado.
Código Delphi
[-]
Orden : String;
.....
.....
procedure TForm1.DBGrid1TitleClick(Column: TColumn);
var
Campo : String;
begin
Campo := Column.FieldName; if Orden='DESC' then
begin
AdoTable1.Sort := Campo+' '+Orden; Orden := 'ASC';
end
else
begin
AdoTable1.Sort := Campo+' '+Orden;
Orden := 'DESC';
end;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
Orden := 'ASC'; end;
El ZTable creo que tiene una propiedad SortedField, entonces Sort cambias por SortedField.
Saluditos