PDA

Ver la Versión Completa : Formato a la salida en un tdbgrid


zachariel
10-06-2004, 18:56:56
Algun experto en delphi que pudiera orientarme en como darle formato a la salida que presenta un TDBGrid :confused: , ya que no lo he podido lograr.... se los agradeceria mucho..:) :cool:

delphi.com.ar
10-06-2004, 19:00:54
Te recomiendo que le des el formato a los campos que cargan el DBGrid, y tanto el DBGrid como la mayoría de los componentes dbaware que reflejen estos datos los tomarán.
Te sugiero que investigues las propiedades de los TFields y sus derivados.

Saludos!

cloayza
10-06-2004, 20:46:40
Yo utilizo una grilla para mostrar el contenido de varias tablas, y que cada campo numerico o fecha me la muestre con formato.

La diferencia con la respuesta anterior es que no necesitas tener creados los TFIELDS en la tabla.

Usa este procedimiento despues de abrir la tabla

Tabla.Open;
SetFormatoGrilla( DBGrid ) //DBGrid es la grilla que muestra los datos...


Procedure TMaster.SetFormatoGrilla(Sender:TDBGrid);
Var
Index:Integer;
Begin
For Index:=0 To (Sender.FieldCount-1) Do
Begin
Try
Case (Sender.Fields[Index].DataType) Of
ftSmallint:TSmallIntField(Sender.Fields[Index] ).DisplayFormat :='#0';
ftInteger :TIntegerField(Sender.Fields[Index] ).DisplayFormat :='#0';
ftFloat :TFloatField( Sender.Fields[Index] ).DisplayFormat :='###,##0.00';
ftDate :TDatetimeField( Sender.Fields[Index] ).DisplayFormat:='dd/mm/yyyy';
End;

Except

End;
End;

End;


Saludos de Christian
Concepcion-Chile

delphi.com.ar
10-06-2004, 21:07:37
La diferencia con la respuesta anterior es que no necesitas tener creados los TFIELDS en la tabla.
Supongo que hablas de tener campos persistentes, creados en tiempo de diseño, y en ningún momento dije eso... ;)
En tu ejemplo también estan creados los campos, dinámicamente supongo, pero creados al fin.

Saludos!