Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #12  
Antiguo 10-05-2022
novato_erick novato_erick is offline
Miembro
 
Registrado: ago 2010
Ubicación: Panamá
Posts: 396
Poder: 14
novato_erick Va por buen camino
Solucionado Comportamiento en cambio de color celda DBGrid

Ahora si chicos en realidad el comportamiento extraño se da cuando usaba directamente el componente DBGrid para comparar la columna:
Este es la forma Antigua:

Código Delphi [-]
procedure TfrmMovimientoProductos.dbgMovDrawColumnCell(Sender: TObject;
  const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState);
begin
  with TDBGrid(Sender).Canvas do
  begin
  if dbgMov.DataSource.DataSet.FieldByName('TIPO_MOVIMIENTO').AsString =
  'ENTRADAS' then//<----- aquí se daba todo el problema
  begin
    dbgMov.Columns[8].Color := clGreen;
    dbgMov.Columns[8].Font.Color := clWhite;
  end
  else
  begin
    dbgMov.Columns[8].Color := clYellow;
    dbgMov.Columns[8].Font.Color := clWindowText;
  end;
  end;
end;

Haciendo esto por ayuda de ustedes:

Código Delphi [-]
procedure TfrmMovimientoProductos.dbgMovDrawColumnCell(Sender: TObject;
  const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState);
begin
if Column.Field = dmLogicaArticulos.cdsMovimientoArticulosTotalTIPO_MOVIMIENTO then
  if dmLogicaArticulos.cdsMovimientoArticulosTotalTIPO_MOVIMIENTO.AsString =
  'ENTRADAS' then //<-- Aquí realicé el cambio y funcionó
  begin
   dbgMov.Canvas.FillRect(Rect);
   dbgMov.Canvas.Brush.Color := clGreen;
   dbgMov.Canvas.Font.Color := clWhite;
  end
  else
  begin
    dbgMov.Canvas.FillRect(Rect);
    dbgMov.Canvas.Brush.Color := clYellow;
    dbgMov.Canvas.Font.Color := clWindowText;
  end;
   dbgMov.DefaultDrawColumnCell(rect,DataCol, Column, State);
end;

En realidad fue extraño sin embargo pude solucionar obteniendo el comportamiento deseado.

Saludos a todos y mil gracias

novato_erick
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Cambiar de color una celda de dbgrid zeta2 Conexión con bases de datos 14 01-07-2016 23:33:12
DBGrid Color Celda hcalero Varios 2 13-04-2007 13:37:42
Cambio de color en el fondo de un DBGrid manu Conexión con bases de datos 1 31-12-2006 18:58:26
Cambiar el color de una celda de un DBGrid candido OOP 2 06-08-2004 10:22:28
Cambio color en una linea dbgrid nugame Gráficos 2 19-05-2003 17:58:29


La franja horaria es GMT +2. Ahora son las 11:32:24.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi