Marky Master

Registrado: 28 Dic 2002Mensajes: 251Ubicación: Las Rozas - Madrid (España)
|
Publicado: Mie 19 Feb, 2003 12:53 am Asunto: Variar la posición del texto en un TDBGrid |
|
|
Mediante este ejemplo se puede cambiar la posición del texto de las celdas en un TDBGrid. Hay que ponerlo en el evento OnDrawColumnCell:
Caso 1.Centrado Verticalmente y alineado a la izquierda
| Código: |
TCanvas *canvas = dynamic_cast<TDBGrid*>(Sender)->Canvas;
TRect r(Rect);
canvas->FillRect(r);
canvas->Font = DBGrid->Font;
canvas->Font->Color = clWindowText;
if(State.Contains(gdSelected))
canvas->Font->Color = clWhite;
DrawText(canvas->Handle, Column->Field->AsString.c_str(),
Column->Field->AsString.Length(), &r,
DT_SINGLELINE | DT_VCENTER | DT_END_ELLIPSIS);
|
Caso 2.Centrado Verticalmente y centrado horizontalmente
| Código: |
DrawText(canvas->Handle, Column->Field->AsString.c_str(),
Column->Field->AsString.Length(), &r,
DT_SINGLELINE |DT_CENTER | DT_VCENTER | DT_END_ELLIPSIS);
|
Se pueden hacer las combinaciones que se quieran:
DT_RIGHT-->Alinea a a la derecha
DT_TOP -->Alinea al borde superior
etc.
Para ver las opciones mirar la ayuda |
|