Como mudo a cor de fundo de um Texto em DBRichEdit?

Delphi

09/12/2004

Olá, como eu faço para mudar a cor de Fundo de um texto no DBRichEdit?


desde ja agradeco

[]s


Titanius

Titanius

Curtidas 0

Respostas

Sonec2004

Sonec2004

09/12/2004

Use a propriedade color.
Exemplo:
DBRichEdit1.Color:=clGreen;


Para saber mais sobre as cores no Delphi, vá no help e digite [u:4c86614a49]TColor type[/u:4c86614a49].

T+


GOSTEI 0
Nildo

Nildo

09/12/2004

Creio que ele queira destacar apenas *parte* do texto.

O código é esse:

procedure RE_SetSelBgColor(RichEdit: TRichEdit; AColor: TColor);
var
  Format: CHARFORMAT2;
begin
  FillChar(Format, SizeOf(Format), 0);
  with Format do
  begin
    cbSize := SizeOf(Format);
    dwMask := CFM_BACKCOLOR;
    crBackColor := AColor;
    Richedit.Perform(EM_SETCHARFORMAT, SCF_SELECTION, Longint(@Format));
  end;
end;


Se trocar o TRichEdit por TDbRichEdit deve funcionar também. Ele seta o fundo do texto selecionado com a cor que você quiser. Você pode fazer uma seleção sem a intervenção visível, da seguinte maneira:

RichEdit1.SelStart := 10;
RichEdit1.SelLength := 2;

vai selecionar (escondido, creio eu) 2 caracteres a partir do décimo.

É isso
Abraços


GOSTEI 0
Titanius

Titanius

09/12/2004

Amigo, acho q nao me expliquei direito, quero que fique somente atras de determinado escrito, e nao do RichEdit, entendeu?


[]s


GOSTEI 0
Nildo

Nildo

09/12/2004

Amigo, acho q nao me expliquei direito, quero que fique somente atras de determinado escrito, e nao do RichEdit, entendeu? []s


Código acima ^


GOSTEI 0
Titanius

Titanius

09/12/2004

Me desculpe, parece que quando estava digitando vc postou.. foi mal...

obrigado assim mesmo...


GOSTEI 0
Titanius

Titanius

09/12/2004

Amigo, ocorreu os seguntes erros:

Build
  [Error] NewCadSubstancias.pas(284): Declaration of ´RE_SetSelBgColor´ differs from previous declaration
  [Error] NewCadSubstancias.pas(286): Undeclared identifier: ´CHARFORMAT2´
  [Error] NewCadSubstancias.pas(291): Undeclared identifier: ´cbSize´
  [Error] NewCadSubstancias.pas(292): Undeclared identifier: ´dwMask´
  [Error] NewCadSubstancias.pas(293): Undeclared identifier: ´crBackColor´
  [Error] NewCadSubstancias.pas(294): Undeclared identifier: ´Richedit´
  [Error] NewCadSubstancias.pas(294): Undeclared identifier: ´EM_SETCHARFORMAT´
  [Error] NewCadSubstancias.pas(294): Undeclared identifier: ´SCF_SELECTION´
  [Fatal Error] Principal.pas(95): Could not compile used unit ´NewCadSubstancias.pas´



Tenho que declarar alguma unit?!?


GOSTEI 0
Massuda

Massuda

09/12/2004

Amigo, ocorreu os seguntes erros:
Build
  [Error] NewCadSubstancias.pas(284): Declaration of ´RE_SetSelBgColor´ differs from previous declaration
  ...
Isso significa que a implementação da sua procedure está diferente do que foi declarado na interface.

Tenho que declarar alguma unit?!?
Voce precisa incluir a unit [b:c75d0c6dd7]RichEdit[/b:c75d0c6dd7] no uses da sua unit.


GOSTEI 0
Titanius

Titanius

09/12/2004

Beleza, funcionou! :D

muito obrigado!

[]s


GOSTEI 0
POSTAR