Ver Mensaje Individual
  #3  
Antiguo 19-07-2004
josem josem is offline
Miembro
 
Registrado: mar 2004
Posts: 23
Reputación: 0
josem Va por buen camino
Talking

Hola Foro.,
Sin darme cuenta al presentar mi consulta, omiti un factor muy
importante. Y es que yo estoy actualmente trabajando con iconos en la
primera columna de la Grilla. Y el punto es que no logro pintar celdillas si
ocupo BitMap.O sea, no puedo pintar celdillas y al mismo tiempo dibujar
iconos. Saben por que pasa esto. Y como solucionarlo.?????.

La rutina que estoy ocupando para dibujar los BitMaps es esta:

procedure TFMantencionDepto.DBGrid1DrawColumnCell(Sender: TObject;
const Rect: TRect; DataCol: Integer; Column: TColumn;
State: TGridDrawState);
begin
{
D = Disponible Limpia ==> Dibuja un Rombo Verde
O = Ocupado ==> Dibuja una maleta de viajero
N = No Disponible ==> Dibuja un Rombo Rojo
S = Disponible Sucia ==> Dibuja un Rombo Amarillo

with Sender as TDBGrid do
begin
if Column.FieldName <> '' then
DefaultDrawColumnCell(Rect, DataCol, Column, State)
else if ( Dt1.TInvUni.FieldByName( 'Estado' ).AsString = 'D' ) then
Canvas.StretchDraw( Rect, RVerde.Picture.Graphic )
else if ( Dt1.TInvUni.FieldByName( 'Estado' ).AsString = 'O' ) then
Canvas.StretchDraw( Rect, Maleta.Picture.Graphic )
else if ( Dt1.TInvUni.FieldByName( 'Estado' ).AsString = 'N' ) then
Canvas.StretchDraw( Rect, RRojo.Picture.Graphic )
else if ( Dt1.TInvUni.FieldByName( 'Estado' ).AsString = 'S' ) then
Canvas.StretchDraw( Rect, RAmar.Picture.Graphic )
else
Canvas.StretchDraw( Rect, RVerde.Picture.Graphic );
end;
end;

Gracias.
Saludos
Jose Miguel Bakulic V.
Responder Con Cita