Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Coloboración Paypal con ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #23  
Antiguo 08-01-2011
Avatar de José Luis Garcí
[José Luis Garcí] José Luis Garcí is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Las Palmas de G.C.
Posts: 1.372
Poder: 25
José Luis Garcí Va camino a la fama
Casimiro se que das el tema por sanjado, pero me quedo la duda de como quedaría con la linea en el grid y la verdad me sorprendió la sencillez de la respuesta, te pongo unas imágenes y al final el código por si sirve de utilidad a algún compañero. Por cierto de momento en todas mis pruebas no me ha dado fallo.

Con linea y cinco colores



Con linea y dos colores



Con linea y sin colores




y por último el código

Código Delphi [-]

procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
  DataCol: Integer; Column: TColumn; State: TGridDrawState);
var Linea:Integer;
begin
     Linea:=0;
     if Asiento<>DataSource1.DataSet.FieldByName('ASIENTO').AsString then
     begin
         if Column.FieldName='HABER' then  Asiento:=DataSource1.DataSet.FieldByName('ASIENTO').AsString;
         Linea:=1;
     end;
     if CheckBox3.Checked=false then
     begin
       if CheckBox1.Checked=true then
       begin
           if CheckBox2.Checked=true then
           begin
            case UlDigit(StrToInt(DataSource1.DataSet.FieldByName('ASIENTO').value)) of
                0 :ColorElegido:=ColorA;
                1 :ColorElegido:=ColorB;
                2 :ColorElegido:=ColorC;
                3 :ColorElegido:=ColorD;
                4 :ColorElegido:=ColorE;
                5 :ColorElegido:=ColorA;
                6 :ColorElegido:=ColorB;
                7 :ColorElegido:=ColorC;
                8 :ColorElegido:=ColorD;
                9 :ColorElegido:=ColorE;
            end;
           end else
           begin
            case UlDigit(StrToInt(DataSource1.DataSet.FieldByName('ASIENTO').value)) of
                0 :ColorElegido:=ColorA;
                2 :ColorElegido:=ColorA;
                4 :ColorElegido:=ColorA;
                6 :ColorElegido:=ColorA;
                8 :ColorElegido:=ColorA;
                1 :ColorElegido:=ColorB;
                3 :ColorElegido:=ColorB;
                5 :ColorElegido:=ColorB;
                7 :ColorElegido:=ColorB;
                9 :ColorElegido:=ColorB;
            end;
           end;
       end else
       begin
         if Asiento<>DataSource1.DataSet.FieldByName('ASIENTO').AsString then
         begin
           //  Asiento:=DataSource1.DataSet.FieldByName('ASIENTO').AsString;
             case SelectMiColor of          //Para invertir La Seleccion
                0:begin
                     ColorElegido:=ColorB;
                     SelectMiColor:=1;
                  end;
                1:begin
                     ColorElegido:=ColorA;
                     SelectMiColor:=0;
                  end;
             end;
         end;
       end;
       DBGrid1.Canvas.Brush.Color := ColorElegido;
       Dbgrid1.Canvas.FillRect(Rect);
       dbGrid1.DefaultDrawColumnCell(Rect,DataCol,Column,State);
     end;
     if Linea=1 then
     begin
         DBGrid1.Canvas.Pen.Color:=clNavy;
         DBGrid1.Canvas.Pen.Width:=3;
         DBGrid1.Canvas.MoveTo(Rect.Left, Rect.Top+1);
         DBGrid1.Canvas.LineTo(Rect.Right, Rect.Top+1);
     end;
end;
__________________
Un saludo desde Canarias, "El abuelo Cebolleta"

Última edición por José Luis Garcí fecha: 08-01-2011 a las 10:38:11.
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
Alternar dos colores en las lineas de un DBGrid. jealousy OOP 4 07-05-2014 15:45:23
colores en un dbgrid frf_84 Gráficos 2 07-12-2004 12:14:57
dbgrid con colores Giniromero Conexión con bases de datos 7 08-07-2004 16:26:29
dbgrid en colores sebas Conexión con bases de datos 2 09-07-2003 09:16:14
Colores en una DBGrid REDCOM Varios 2 26-05-2003 20:42:58


La franja horaria es GMT +2. Ahora son las 00:28:10.


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
Copyright 1996-2007 Club Delphi