Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem Vyhledavani v kompinentě MEMO (Delphi)

Odpoveď na pôvodnú otázku: áno pochopil si to správne. :-)

Tu Ti dávam modifikovanú verziu, kde sa zabarví aj pozadie nájdeného textu:

implementation

uses RichEdit;

{$R *.dfm}

procedure TForm7.Button1Click(Sender: TObject);
var
  FoundAt: LongInt;
  StartPos, ToEnd: Integer;
  Format: CHARFORMAT2;
begin
  FillChar(Format, SizeOf(Format), 0);
  Format.cbSize := SizeOf(Format);
  Format.dwMask := CFM_BACKCOLOR;
  Format.crBackColor := clYellow;  //pozadie nájdeného textu = žlté

  with RichEdit1 do
  begin
    StartPos := 0;
    ToEnd := Length(Text) - StartPos;
    FoundAt := FindText(edit1.Text, StartPos, ToEnd, []);
    while FoundAt <> -1 do
    begin
      SetFocus;
      SelStart := FoundAt;
      SelLength := Length(edit1.Text);
      SelAttributes.Color := clRed;   //farba nájdeného textu
      SelAttributes.Style := [fsBold];  //ak chceš písmo bude tučné
      SelAttributes.Size := 14;   // veľkosť fontu
      Perform(EM_SETCHARFORMAT, SCF_SELECTION, Longint(@Format));
      StartPos := SelStart + SelLength;
      ToEnd := Length(Text) - StartPos;
      FoundAt := FindText(edit1.Text, StartPos, ToEnd, []);
    end;
    SelStart := 0; // skok na začiatok
    Sellength := 0;
  end;
end;
P.S. "Jo a zas se někdy stav..." (Nebaví ma odpovedať, keď sa ukážeš raz za deň, venuj sa tématu a odpovedaj/pýtaj sa hneď!)

Reakce na odpověď

1 Zadajte svou přezdívku:
2 Napište svou odpověď:
3 Pokud chcete dostat ban, zadejte libovolný text:

Zpět do poradny