Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   Sobre dbctrlGrid y color (https://www.clubdelphi.com/foros/showthread.php?t=81021)

Carmelo Cash 03-10-2012 01:41:00

Sobre dbctrlGrid y color
 
Hola Foro:

Estoy trabajando con Delphi 7, y tengo una consulta que devuelve lo siguiente:

ID Tramite color
-- ------- ----
1 Reclamos clRed
2 Memos clGreen
3 Quejas clBlue


etc.


Lo conecté a un dbctrlGrid y necesito que la grilla me quede en colores y que quede algo así:


---------
Reclamos
---------
Memos
---------
Quejas
---------

(Aunque en realidad lo que necesito es que el fondo sea en color y las letras en negro)

Estuve viendo algunos hilos pero no logro resolverlo.

Espero que alguien pueda darme alguna indicación.

Desde ya gracias por su atención.

ecfisa 03-10-2012 09:25:14

Hola Carmelo Cash.

Código Delphi [-]
...
uses
  StrUtils;

procedure TForm1.DBCtrlGrid1PaintPanel(DBCtrlGrid: TDBCtrlGrid; Index: Integer);
var
  R: TRect;
  Tramite: string;
begin
  with DBCtrlGrid do
  begin
    R:= Rect(0, 0, PanelWidth, PanelHeight);
    Tramite:= DBCtrlGrid.DataSource.DataSet.FieldByName('Tramite').AsString;
    case AnsiIndexStr(Tramite,['Reclamos','Memos','Quejas']) of
      0: Canvas.Brush.Color:= clRed;   // Reclamos
      1: Canvas.Brush.Color:= clGreen; // Memos
      2: Canvas.Brush.Color:= clBlue;  // Quejas
    end;
    Canvas.FillRect(R);
    if PanelIndex = Index then
      Canvas.DrawFocusRect(R);
  end;
end;

Saludos.

Carmelo Cash 03-10-2012 18:11:32

Listo
 
Funcionó perfecto, Muchas gracias ecfisa. Saludos.


La franja horaria es GMT +2. Ahora son las 04:58:18.

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