Valeu pela resposta, Mas no seu caso vc nao esta usando o "onDrawColumnCel" ? 

Minha duvida é quanto ao "onDrawDataCell ". Eu não consegui entender quando o 
evento é disparado, e nem o que ele faz. 

----- Mensagem original ----
De: alan_adolfo <[EMAIL PROTECTED]>
Para: delphi-br@yahoogrupos.com.br
Enviadas: Sexta-feira, 21 de Setembro de 2007 11:58:36
Assunto: [delphi-br] Re: onDrawDataCell









  


    
            Ola , vamos ver se eu tiro a sua duvia



"onDrawDataCell" ele muda a cor do campos do Grid, por exemple



tenho uma tabela q contem 6 campo da mega sena, e tenho um cadastr 

de 29 jogos e gostaria de rachurar os numeros q saiu na ultima 

megasena.

Olha como eu fiz.



Bom não sei se eu te ajudei a exclarecer sua duvida, me manda 

resposta para eu saber se ja entendeu.



procedure TfrmJogoDaSena. grdJogadorDrawCo lumnCell( Sender: TObject;

  const Rect: TRect; DataCol: Integer; Column: TColumn;

  State: TGridDrawState) ;

Var

  nOldB, nOldF : TColor;

//  contA : integer;

Begin



With  grdJogador  Do

  Begin

    n1  := Trim(DM.qryJogadorn 1.Text);

    n2  := Trim(DM.qryJogadorn 2.Text);

    n3  := Trim(DM.qryJogadorn 3.Text);

    n4  := Trim(DM.qryJogadorn 4.Text);

    n5  := Trim(DM.qryJogadorn 5.Text);

    n6  := Trim(DM.qryJogadorn 6.Text);



nOldF := Canvas.Font. Color;

    nOldB := Canvas.Brush. Color;



a  := trim(edtN1.Text) ;

    b := trim(edtN2.text) ;

    c := trim(edtN3.text) ;

    d := trim(edtN4.text) ;

    e := trim(edtN5.text) ;

    f := trim(edtN6.text) ;



If (Column.Index = 1) and Not (gdFocused in State) Then

  Begin

    If n1 = (a)  Then

    Begin

       Canvas.Brush. Color := clInfoBk;

       Canvas.Font. Color  := nOldF;

        contadora;

     End;

     If (gdFocused in State) Then

       Canvas.Font. Color := clWhite;

     DefaultDrawColumnCe ll(Rect, Datacol, Column, State);

  End;

  If (Column.Index = 2) and Not (gdFocused in State) Then

  Begin

    If n2 = (a)  Then

     Begin

       Canvas.Brush. Color := clInfoBk;

       Canvas.Font. Color  := nOldF;

        contadora;

     End;

     If (gdFocused in State) Then

       Canvas.Font. Color := clWhite;

     DefaultDrawColumnCe ll(Rect, Datacol, Column, State);

  End;

  If (Column.Index = 3) and Not (gdFocused in State) Then

  Begin

    If n3 = (a)  Then

     Begin

       Canvas.Brush. Color := clInfoBk;

       Canvas.Font. Color  := nOldF;

       contadora;

     End;

     If (gdFocused in State) Then

       Canvas.Font. Color := clWhite;

     DefaultDrawColumnCe ll(Rect, Datacol, Column, State);

  End;

  If (Column.Index = 4) and Not (gdFocused in State) Then

  Begin

    If n4 = (a)  Then

     Begin

       Canvas.Brush. Color := clInfoBk;

       Canvas.Font. Color  := nOldF;

        contadora;

     End;

     If (gdFocused in State) Then

       Canvas.Font. Color := clWhite;

     DefaultDrawColumnCe ll(Rect, Datacol, Column, State);

  End;

  If (Column.Index = 5) and Not (gdFocused in State) Then

  Begin

    If n5 = (a)  Then

     Begin

       Canvas.Brush. Color := clInfoBk;

       Canvas.Font. Color  := nOldF;

       contadora;

     End;

     If (gdFocused in State) Then

       Canvas.Font. Color := clWhite;

     DefaultDrawColumnCe ll(Rect, Datacol, Column, State);

  End;

  If (Column.Index = 6) and Not (gdFocused in State) Then

  Begin

    If n6 = (a)  Then

     Begin

       Canvas.Brush. Color := clInfoBk;

       Canvas.Font. Color  := nOldF;

       contadora;

     End;

     If (gdFocused in State) Then

       Canvas.Font. Color := clWhite;

     DefaultDrawColumnCe ll(Rect, Datacol, Column, State);

  End;

 //////////// ///////// /

  If (Column.Index = 1) and Not (gdFocused in State) Then

  Begin

    If n1 = (b)  Then

    Begin

       Canvas.Brush. Color := clInfoBk;

       Canvas.Font. Color  := nOldF;

       contadorb;

     End;

     If (gdFocused in State) Then

       Canvas.Font. Color := clWhite;

     DefaultDrawColumnCe ll(Rect, Datacol, Column, State);

  End;

  If (Column.Index = 2) and Not (gdFocused in State) Then

  Begin

    If n2 = (b)  Then

     Begin

       Canvas.Brush. Color := clInfoBk;

       Canvas.Font. Color  := nOldF;

       contadorb;

     End;

     If (gdFocused in State) Then

       Canvas.Font. Color := clWhite;

     DefaultDrawColumnCe ll(Rect, Datacol, Column, State);

  End;

  If (Column.Index = 3) and Not (gdFocused in State) Then

  Begin

    If n3 = (b)  Then

     Begin

       Canvas.Brush. Color := clInfoBk;

       Canvas.Font. Color  := nOldF;

       contadorb;

     End;

     If (gdFocused in State) Then

       Canvas.Font. Color := clWhite;

     DefaultDrawColumnCe ll(Rect, Datacol, Column, State);

  End;

  If (Column.Index = 4) and Not (gdFocused in State) Then

  Begin

    If n4 = (b)  Then

     Begin

       Canvas.Brush. Color := clInfoBk;

       Canvas.Font. Color  := nOldF;

       contadorb;

     End;

     If (gdFocused in State) Then

       Canvas.Font. Color := clWhite;

     DefaultDrawColumnCe ll(Rect, Datacol, Column, State);

  End;

  If (Column.Index = 5) and Not (gdFocused in State) Then

  Begin

    If n5 = (b)  Then

     Begin

       Canvas.Brush. Color := clInfoBk;

       Canvas.Font. Color  := nOldF;

       contadorb;

     End;

     If (gdFocused in State) Then

       Canvas.Font. Color := clWhite;

     DefaultDrawColumnCe ll(Rect, Datacol, Column, State);

  End;

  If (Column.Index = 6) and Not (gdFocused in State) Then

  Begin

    If n6 =(b)  Then

     Begin

       Canvas.Brush. Color := clInfoBk;

       Canvas.Font. Color  := nOldF;

       contadorb;

     End;

     If (gdFocused in State) Then

       Canvas.Font. Color := clWhite;

     DefaultDrawColumnCe ll(Rect, Datacol, Column, State);

  End;

 //////////// ///////// /

  If (Column.Index = 1) and Not (gdFocused in State) Then

  Begin

    If n1 = (c)  Then

    Begin

       Canvas.Brush. Color := clInfoBk;

       Canvas.Font. Color  := nOldF;

       contadorc;

    End;

    If (gdFocused in State) Then

      Canvas.Font. Color := clWhite;

    DefaultDrawColumnCe ll(Rect, Datacol, Column, State);

  End;

  If (Column.Index = 2) and Not (gdFocused in State) Then

  Begin

    If n2 = (c)  Then

     Begin

       Canvas.Brush. Color := clInfoBk;

       Canvas.Font. Color  := nOldF;

       //contadorc;

     End;

     If (gdFocused in State) Then

       Canvas.Font. Color := clWhite;

     DefaultDrawColumnCe ll(Rect, Datacol, Column, State);

  End;

  If (Column.Index = 3) and Not (gdFocused in State) Then

  Begin

    If n3 = (c)  Then

     Begin

       Canvas.Brush. Color := clInfoBk;

       Canvas.Font. Color  := nOldF;

       //contadorc;

     End;

     If (gdFocused in State) Then

       Canvas.Font. Color := clWhite;

     DefaultDrawColumnCe ll(Rect, Datacol, Column, State);

  End;

  If (Column.Index = 4) and Not (gdFocused in State) Then

  Begin

    If n4 = (c)  Then

     Begin

       Canvas.Brush. Color := clInfoBk;

       Canvas.Font. Color  := nOldF;

       //contadorc;

     End;

     If (gdFocused in State) Then

       Canvas.Font. Color := clWhite;

     DefaultDrawColumnCe ll(Rect, Datacol, Column, State);

  End;

  If (Column.Index = 5) and Not (gdFocused in State) Then

  Begin

    If n5 = (c)  Then

     Begin

       Canvas.Brush. Color := clInfoBk;

       Canvas.Font. Color  := nOldF;

       //contadorc;

     End;

     If (gdFocused in State) Then

       Canvas.Font. Color := clWhite;

     DefaultDrawColumnCe ll(Rect, Datacol, Column, State);

  End;

  If (Column.Index = 6) and Not (gdFocused in State) Then

  Begin

    If n6 =(c)  Then

     Begin

       Canvas.Brush. Color := clInfoBk;

       Canvas.Font. Color  := nOldF;

       //contadorc;

     End;

     If (gdFocused in State) Then

       Canvas.Font. Color := clWhite;

     DefaultDrawColumnCe ll(Rect, Datacol, Column, State);

  End;

 //////////// ///////// /

  If (Column.Index = 1) and Not (gdFocused in State) Then

  Begin

    If n1 = (d)  Then

    Begin

       Canvas.Brush. Color := clInfoBk;

       Canvas.Font. Color  := nOldF;

       //contadord;

     End;

     If (gdFocused in State) Then

       Canvas.Font. Color := clWhite;

     DefaultDrawColumnCe ll(Rect, Datacol, Column, State);

  End;

  If (Column.Index = 2) and Not (gdFocused in State) Then

  Begin

    If n2 = (d)  Then

     Begin

       Canvas.Brush. Color := clInfoBk;

       Canvas.Font. Color  := nOldF;

       //contadord;

     End;

     If (gdFocused in State) Then

       Canvas.Font. Color := clWhite;

     DefaultDrawColumnCe ll(Rect, Datacol, Column, State);

  End;

  If (Column.Index = 3) and Not (gdFocused in State) Then

  Begin

    If n3 = (d)  Then

     Begin

       Canvas.Brush. Color := clInfoBk;

       Canvas.Font. Color  := nOldF;

       //contadord;

     End;

     If (gdFocused in State) Then

       Canvas.Font. Color := clWhite;

     DefaultDrawColumnCe ll(Rect, Datacol, Column, State);

  End;

  If (Column.Index = 4) and Not (gdFocused in State) Then

  Begin

    If n4 = (d)  Then

     Begin

       Canvas.Brush. Color := clInfoBk;

       Canvas.Font. Color  := nOldF;

       //contadord;

     End;

     If (gdFocused in State) Then

       Canvas.Font. Color := clWhite;

     DefaultDrawColumnCe ll(Rect, Datacol, Column, State);

  End;

  If (Column.Index = 5) and Not (gdFocused in State) Then

  Begin

    If n5 = (d)  Then

     Begin

       Canvas.Brush. Color := clInfoBk;

       Canvas.Font. Color  := nOldF;

       //contadord;

     End;

     If (gdFocused in State) Then

       Canvas.Font. Color := clWhite;

     DefaultDrawColumnCe ll(Rect, Datacol, Column, State);

  End;

  If (Column.Index = 6) and Not (gdFocused in State) Then

  Begin

    If n6 =(d)  Then

     Begin

       Canvas.Brush. Color := clInfoBk;

       Canvas.Font. Color  := nOldF;

       //contadord;

     End;

     If (gdFocused in State) Then

       Canvas.Font. Color := clWhite;

     DefaultDrawColumnCe ll(Rect, Datacol, Column, State);

  End;



//////////// ///////// /

  If (Column.Index = 1) and Not (gdFocused in State) Then

  Begin

    If n1 = (e)  Then

    Begin

       Canvas.Brush. Color := clInfoBk;

       Canvas.Font. Color  := nOldF;

       //contadore;

     End;

     If (gdFocused in State) Then

       Canvas.Font. Color := clWhite;

     DefaultDrawColumnCe ll(Rect, Datacol, Column, State);

  End;

  If (Column.Index = 2) and Not (gdFocused in State) Then

  Begin

    If n2 = (e)  Then

     Begin

       Canvas.Brush. Color := clInfoBk;

       Canvas.Font. Color  := nOldF;

       //contadore;

     End;

     If (gdFocused in State) Then

       Canvas.Font. Color := clWhite;

     DefaultDrawColumnCe ll(Rect, Datacol, Column, State);

  End;

  If (Column.Index = 3) and Not (gdFocused in State) Then

  Begin

    If n3 = (e)  Then

     Begin

       Canvas.Brush. Color := clInfoBk;

       Canvas.Font. Color  := nOldF;

       //contadore;

     End;

     If (gdFocused in State) Then

       Canvas.Font. Color := clWhite;

     DefaultDrawColumnCe ll(Rect, Datacol, Column, State);

  End;

  If (Column.Index = 4) and Not (gdFocused in State) Then

  Begin

    If n4 = (e)  Then

     Begin

       Canvas.Brush. Color := clInfoBk;

       Canvas.Font. Color  := nOldF;

       //contadore;

     End;

     If (gdFocused in State) Then

       Canvas.Font. Color := clWhite;

     DefaultDrawColumnCe ll(Rect, Datacol, Column, State);

  End;

  If (Column.Index = 5) and Not (gdFocused in State) Then

  Begin

    If n5 = (e)  Then

     Begin

       Canvas.Brush. Color := clInfoBk;

       Canvas.Font. Color  := nOldF;

       //contadore;

     End;

     If (gdFocused in State) Then

       Canvas.Font. Color := clWhite;

     DefaultDrawColumnCe ll(Rect, Datacol, Column, State);

  End;

  If (Column.Index = 6) and Not (gdFocused in State) Then

  Begin

    If n6 =(e)  Then

     Begin

       Canvas.Brush. Color := clInfoBk;

       Canvas.Font. Color  := nOldF;

       //contadore;

     End;

     If (gdFocused in State) Then

       Canvas.Font. Color := clWhite;

     DefaultDrawColumnCe ll(Rect, Datacol, Column, State);

  End;

         //////////// ///////// /

  If (Column.Index = 1) and Not (gdFocused in State) Then

  Begin

    If n1 = (f)  Then

    Begin

       Canvas.Brush. Color := clInfoBk;

       Canvas.Font. Color  := nOldF;

       //contadorf;

     End;

     If (gdFocused in State) Then

       Canvas.Font. Color := clWhite;

     DefaultDrawColumnCe ll(Rect, Datacol, Column, State);

  End;

  If (Column.Index = 2) and Not (gdFocused in State) Then

  Begin

    If n2 = (f)  Then

     Begin

       Canvas.Brush. Color := clInfoBk;

       Canvas.Font. Color  := nOldF;

       //contadorf;

     End;

     If (gdFocused in State) Then

       Canvas.Font. Color := clWhite;

     DefaultDrawColumnCe ll(Rect, Datacol, Column, State);

  End;

  If (Column.Index = 3) and Not (gdFocused in State) Then

  Begin

    If n3 = (f)  Then

     Begin

       Canvas.Brush. Color := clInfoBk;

       Canvas.Font. Color  := nOldF;

       //contadorf;

     End;

     If (gdFocused in State) Then

       Canvas.Font. Color := clWhite;

     DefaultDrawColumnCe ll(Rect, Datacol, Column, State);

  End;

  If (Column.Index = 4) and Not (gdFocused in State) Then

  Begin

    If n4 = (f)  Then

     Begin

       Canvas.Brush. Color := clInfoBk;

       Canvas.Font. Color  := nOldF;

       //contadorf;

     End;

     If (gdFocused in State) Then

       Canvas.Font. Color := clWhite;

     DefaultDrawColumnCe ll(Rect, Datacol, Column, State);

  End;

  If (Column.Index = 5) and Not (gdFocused in State) Then

  Begin

    If n5 = (f)  Then

     Begin

       Canvas.Brush. Color := clInfoBk;

       Canvas.Font. Color  := nOldF;

       //contadorf;

     End;

     If (gdFocused in State) Then

       Canvas.Font. Color := clWhite;

     DefaultDrawColumnCe ll(Rect, Datacol, Column, State);

  End;

  If (Column.Index = 6) and Not (gdFocused in State) Then

  Begin

    If n6 =(f)  Then

     Begin

       Canvas.Brush. Color := clInfoBk;

       Canvas.Font. Color  := nOldF;

       //contadorf;

     End;

     If (gdFocused in State) Then

       Canvas.Font. Color := clWhite;

     DefaultDrawColumnCe ll(Rect, Datacol, Column, State);

  End;



Canvas.Brush. Color := nOldB;

  //  label8.Caption: =IntToStr( conta);

   End;



--- Em [EMAIL PROTECTED] os.com.br, Evaldo <evaldoavelar@ ...> 

escreveu

>

> Estou dando manutenção em um sistema que possui um DBgrid com o 

evento  "onDrawDataCell" , que nunca é disparado. Pergunto:

> 

> Qual a utilidade do onDrawDataCell do DBGrid? e quando que ele é 

disparado? pesquisei no help, mas está meio confuso, ele diz para 

não usar. encontrei o seguinte: 

> 

> "Do not write an OnDrawDataCell event handler. OnDrawDataCell is

> 

> obsolete and included for backward compatibility. Instead, write an

> 

> OnDrawColumnCell event handler." 

> 

> 

> 

> 

>       Flickr agora em português. Você clica, todo mundo vê.

> http://www.flickr. com.br/

> 

> [As partes desta mensagem que não continham texto foram removidas]

>





    
  

    
    




<!--

#ygrp-mkp{
border:1px solid #d8d8d8;font-family:Arial;margin:14px 0px;padding:0px 14px;}
#ygrp-mkp hr{
border:1px solid #d8d8d8;}
#ygrp-mkp #hd{
color:#628c2a;font-size:85%;font-weight:bold;line-height:122%;margin:10px 0px;}
#ygrp-mkp #ads{
margin-bottom:10px;}
#ygrp-mkp .ad{
padding:0 0;}
#ygrp-mkp .ad a{
color:#0000ff;text-decoration:none;}
-->



<!--

#ygrp-sponsor #ygrp-lc{
font-family:Arial;}
#ygrp-sponsor #ygrp-lc #hd{
margin:10px 0px;font-weight:bold;font-size:78%;line-height:122%;}
#ygrp-sponsor #ygrp-lc .ad{
margin-bottom:10px;padding:0 0;}
-->



<!--

#ygrp-mlmsg {font-size:13px;font-family:arial, helvetica, clean, sans-serif;}
#ygrp-mlmsg table {font-size:inherit;font:100%;}
#ygrp-mlmsg select, input, textarea {font:99% arial, helvetica, clean, 
sans-serif;}
#ygrp-mlmsg pre, code {font:115% monospace;}
#ygrp-mlmsg * {line-height:1.22em;}
#ygrp-text{
font-family:Georgia;
}
#ygrp-text p{
margin:0 0 1em 0;}
#ygrp-tpmsgs{
font-family:Arial;
clear:both;}
#ygrp-vitnav{
padding-top:10px;font-family:Verdana;font-size:77%;margin:0;}
#ygrp-vitnav a{
padding:0 1px;}
#ygrp-actbar{
clear:both;margin:25px 0;white-space:nowrap;color:#666;text-align:right;}
#ygrp-actbar .left{
float:left;white-space:nowrap;}
.bld{font-weight:bold;}
#ygrp-grft{
font-family:Verdana;font-size:77%;padding:15px 0;}
#ygrp-ft{
font-family:verdana;font-size:77%;border-top:1px solid #666;
padding:5px 0;
}
#ygrp-mlmsg #logo{
padding-bottom:10px;}

#ygrp-vital{
background-color:#e0ecee;margin-bottom:20px;padding:2px 0 8px 8px;}
#ygrp-vital #vithd{
font-size:77%;font-family:Verdana;font-weight:bold;color:#333;text-transform:uppercase;}
#ygrp-vital ul{
padding:0;margin:2px 0;}
#ygrp-vital ul li{
list-style-type:none;clear:both;border:1px solid #e0ecee;
}
#ygrp-vital ul li .ct{
font-weight:bold;color:#ff7900;float:right;width:2em;text-align:right;padding-right:.5em;}
#ygrp-vital ul li .cat{
font-weight:bold;}
#ygrp-vital a{
text-decoration:none;}

#ygrp-vital a:hover{
text-decoration:underline;}

#ygrp-sponsor #hd{
color:#999;font-size:77%;}
#ygrp-sponsor #ov{
padding:6px 13px;background-color:#e0ecee;margin-bottom:20px;}
#ygrp-sponsor #ov ul{
padding:0 0 0 8px;margin:0;}
#ygrp-sponsor #ov li{
list-style-type:square;padding:6px 0;font-size:77%;}
#ygrp-sponsor #ov li a{
text-decoration:none;font-size:130%;}
#ygrp-sponsor #nc{
background-color:#eee;margin-bottom:20px;padding:0 8px;}
#ygrp-sponsor .ad{
padding:8px 0;}
#ygrp-sponsor .ad #hd1{
font-family:Arial;font-weight:bold;color:#628c2a;font-size:100%;line-height:122%;}
#ygrp-sponsor .ad a{
text-decoration:none;}
#ygrp-sponsor .ad a:hover{
text-decoration:underline;}
#ygrp-sponsor .ad p{
margin:0;}
o{font-size:0;}
.MsoNormal{
margin:0 0 0 0;}
#ygrp-text tt{
font-size:120%;}
blockquote{margin:0 0 0 4px;}
.replbq{margin:4;}
-->








      Flickr agora em português. Você clica, todo mundo vê.
http://www.flickr.com.br/

[As partes desta mensagem que não continham texto foram removidas]

Responder a