Essa dica é legal se vc digitar o "valor exato" da tabela, se for um valor
parcial, como fazemos?
  -----Mensagem original-----
  De: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED]
nome de Vitor Luiz Redes
  Enviada em: quinta-feira, 25 de agosto de 2005 13:55
  Para: delphi-br@yahoogrupos.com.br
  Assunto: Re: [delphi-br] Pintar Célula Do DBGrid


      Acho que não precisa de tudo isso não hein...
      No evento DrawColumnCell...

  begin
      if DATASET.FieldByName( 'CLIENTE' ).AsString = ctrlPesquisa.Text then
          GRID.Canvas.Font.Style := [ fsBold ]
      else
          GRID.Canvas.Font.Style := [ ];
      GRID.DefaultDrawColumnCell( Rect, Field, State );
  end;

      Onde...
          DATASET = TTable, TQuery, TSQLQuery, TSimpleDataSet, enfim, o
componente que estás a usar para acessar os dados, e que está ligado ao
DATASOURCE do DBGrid.
          GRID = O próprio DBGrid...


  constructor TVitor.Create( AOwner : TProgrammer );
  begin
      Name := 'Vitor Redes';
      Login := 'vredes';
      Password := '**********';
      City := 'Curitiba';
      Employee := 'Redsystem';
      inherited Create( AOwner )
  end;

  end.
    ----- Original Message -----
    From: Eduardo Silva ®
    To: delphi-br@yahoogrupos.com.br
    Sent: Thursday, August 25, 2005 9:33 AM
    Subject: RES: [delphi-br] Pintar Célula Do DBGrid


    Amigo, veja este código....

    É um bom começo, se alguém quiser dar uma melhorada nele, ou mesmo
    contribuir para esta dica, a comunidade agradece e eu tambem

    procedure TfrmSIAE0101pq.gridSIAE0101pqDrawColumnCell(Sender: TObject;
      const Rect: TRect; DataCol: Integer; Column: TColumn;
      State: TGridDrawState);
    var
       I, J, K, L                : Integer;
       Fonte                     : TFont;
       Area                      : TRect;
       Cor                       : TColor;
       T1, T2, P1                : Integer;
       Trecho1, Trecho2, Trecho3 : String;
       Texto, Pesquisar          : String;
    begin
       Area      := Rect;
       Texto     := Column.Field.AsString;
       Pesquisar := Trim(edtInformacao.Text);
       T1        := Length(Texto);
       T2        := Length(Pesquisar);
       P1        := Pos(UpperCase(Pesquisar), UpperCase(Texto));

       if (P1 = 0) Then
          Exit;

       //CONTEÚDO DESMEMBRADO DA CÉLULA
       Trecho1 := Copy(Texto, 1, P1 - 1);
       Trecho2 := Copy(Texto, P1, T2);
       Trecho3 := Copy(Texto, P1 + T2, T1);

       //CONFIGURAÇÃO ORIGINAL DO DBGRID
       Fonte := gridSIAE0101pq.Font;
       Cor   := gridSIAE0101pq.Color;

       with gridSIAE0101pq.Canvas Do
       begin
          //INICIO DO TEXTO
          I          := TextWidth(Trecho1);
          Area.Right := Area.Right - I;
          TextRect(Area, Area.Left, Area.Top, Trecho1);

          //TRECHO LOCALIZADO
          Brush.Color := clBtnFace;
          Font.Color  := clYellow;
          Font.Style  := [fsBold] + Fonte.Style;
          Font.Size   := Fonte.Size;
          if (gdSelected in State) then
          begin
             Brush.Color := clRed;
             Font.Color  := clYellow;
          end;
          J          := TextWidth(Trecho2);
          Area.Left  := Area.Left + I + 1;
          Area.Right := Area.Left + J + 1;
          TextRect(Area, Area.Left, Area.Top, Trecho2);

          //FIM DO TEXTO
          Brush.Color := Cor;
          Font.Assign(Fonte);
          if (gdSelected in State) then
          begin
             Brush.Color := clHighlight;
             Font.Color  := clHighlightText;
          end;
          L          := TextWidth(Trecho3);
          Area.Left  := Area.Right;
          Area.Right := Area.Right + L;
          TextRect(Area, Area.Left, Area.Top, Trecho3);
       end;
    end;
      -----Mensagem original-----
      De: delphi-br@yahoogrupos.com.br
[mailto:[EMAIL PROTECTED]
    nome de Cleiton
      Enviada em: quinta-feira, 25 de agosto de 2005 08:18
      Para: Delhpi
      Assunto: [delphi-br] Pintar Célula Do DBGrid


      Olá pessoal...

      Tenho um formulário para pesquisa em que utilizo um edit e um DBgrid.

      O usuário digita por exemplo o nome do cliente no edit e no dbgrid é
    marcado o cliente desejado.

      Teria como eu destacar de outra cor ou até mesmo deixar em negrito a
    célula do DBgrid que possui o cliente pesquisado?

      Alguém sabe como fazer isso?

      Obrigado a todos.
      --
      Esta mensagem foi verificada pelo sistema de antivírus e
      acredita-se estar livre de perigo.



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



      --
      <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>

      Para ver as mensagens antigas, acesse:
      http://br.groups.yahoo.com/group/delphi-br/messages

      Para falar com o moderador, envie um e-mail para:
      [EMAIL PROTECTED] ou [EMAIL PROTECTED]



            Yahoo! Grupos, um serviço oferecido por:



    ------------------------------------------------------------------------
----
    --
      Links do Yahoo! Grupos

        a.. Para visitar o site do seu grupo na web, acesse:
        http://br.groups.yahoo.com/group/delphi-br/

        b.. Para sair deste grupo, envie um e-mail para:
        [EMAIL PROTECTED]

        c.. O uso que você faz do Yahoo! Grupos está sujeito aos Termos do
    Serviço do Yahoo!.



      __________ NOD32 1.1201 (20050825) Information __________

      This message was checked by NOD32 antivirus system.
      http://www.nod32.com


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



    --
    <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>

    Para ver as mensagens antigas, acesse:
    http://br.groups.yahoo.com/group/delphi-br/messages

    Para falar com o moderador, envie um e-mail para:
    [EMAIL PROTECTED] ou [EMAIL PROTECTED]



          Yahoo! Grupos, um serviço oferecido por:



  --------------------------------------------------------------------------
----
    Links do Yahoo! Grupos

      a.. Para visitar o site do seu grupo na web, acesse:
      http://br.groups.yahoo.com/group/delphi-br/

      b.. Para sair deste grupo, envie um e-mail para:
      [EMAIL PROTECTED]

      c.. O uso que você faz do Yahoo! Grupos está sujeito aos Termos do
Serviço do Yahoo!.



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



  --
  <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>

  Para ver as mensagens antigas, acesse:
  http://br.groups.yahoo.com/group/delphi-br/messages

  Para falar com o moderador, envie um e-mail para:
  [EMAIL PROTECTED] ou [EMAIL PROTECTED]



        Yahoo! Grupos, um serviço oferecido por:



----------------------------------------------------------------------------
--
  Links do Yahoo! Grupos

    a.. Para visitar o site do seu grupo na web, acesse:
    http://br.groups.yahoo.com/group/delphi-br/

    b.. Para sair deste grupo, envie um e-mail para:
    [EMAIL PROTECTED]

    c.. O uso que você faz do Yahoo! Grupos está sujeito aos Termos do
Serviço do Yahoo!.



  __________ NOD32 1.1201 (20050825) Information __________

  This message was checked by NOD32 antivirus system.
  http://www.nod32.com


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



-- 
<<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>

Para ver as mensagens antigas, acesse:
 http://br.groups.yahoo.com/group/delphi-br/messages

Para falar com o moderador, envie um e-mail para:
 [EMAIL PROTECTED] ou [EMAIL PROTECTED]
 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
    http://br.groups.yahoo.com/group/delphi-br/

<*> Para sair deste grupo, envie um e-mail para:
    [EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
    http://br.yahoo.com/info/utos.html

 


Responder a