Programación General > Trucos

 Ordenar grid

(1/1)

lair:
Hola a todos este codigo sirve para ordenar los registros contenidos en un dbgrid al dar click en el titulo de cada columna


--- Código: Delphi ---procedure TForm1.DBGrid1MouseMove  (Sender: TObject; Shift: TShiftState; X, Y: Integer);var  pt: TGridcoord;begin  pt:= DBGrid1.MouseCoord(x, y);   if pt.y=0 then    DBGrid1.Cursor:=crHandPoint  else    DBGrid1.Cursor:=crDefault;end; 

--- Código: Delphi ---procedure TForm1.DBGrid1TitleClick(Column: TColumn);{$J+} const PreviousColumnIndex : integer = -1;{$J-}begin  if DBGrid1.DataSource.DataSet is TCustomADODataSet then  with TCustomADODataSet(DBGrid1.DataSource.DataSet) do  begin    try      DBGrid1.Columns[PreviousColumnIndex].title.Font.Style :=      DBGrid1.Columns[PreviousColumnIndex].title.Font.Style - [fsBold];    except    end;     Column.title.Font.Style :=     Column.title.Font.Style + [fsBold];    PreviousColumnIndex := Column.Index;     if (Pos(Column.Field.FieldName, Sort) = 1) and (Pos(' DESC', Sort)= 0) then      Sort := Column.Field.FieldName + ' DESC'    else      Sort := Column.Field.FieldName + ' ASC';  end;end; 
espero les sea util  :beer:

Navegación

[0] Índice de Mensajes

Ir a la versión completa