![]() |
Re: Suchergbenisse farblich hinterlegen (TSynMemo)
Hallo,
Zitat:
Delphi-Quellcode:
procedure TFrameEditor.SynEditPaint(Sender: TObject; ACanvas: TCanvas);
var i : Integer; j : Integer; P : TPoint; Token : String; Attri : TSynHighlighterAttributes; begin with SynEdit do begin // Ist keine Suchmaschine zugewiesen, raus, dann können wir uns das sparen. If Not Assigned(SearchEngine) then Exit; If SearchEngine.Pattern = '' then Exit; ACanvas.Brush.Color := clYellow; ACanvas.Brush.Style := bsSolid; // Die Suchbegriffe werden nur im sichtbaren Bereich hervorgehoben, // spart bei großen Dateien viel Zeit. for i := TopLine - 1 to TopLine + LinesInWindow do begin SearchEngine.FindAll(Lines[i]); for j := 0 to SearchEngine.ResultCount - 1 do begin P := RowColumnToPixels(BufferToDisplayPos(BufferCoord(SearchEngine.Results[j], i + 1))); GetHighlighterAttriAtRowCol(BufferCoord(SearchEngine.Results[j], i + 1),Token,Attri); Try ACanvas.Font.Style := Attri.Style; except on e : Exception do ACanvas.Font := Font; end; ACanvas.TextOut(P.X, P.Y, SearchEngine.Pattern); end; end; end; end; |
Re: Suchergbenisse farblich hinterlegen (TSynMemo)
Hallo Stephan,
erstmal ein ganz dickes Lob für Deine Arbeit. :thumb: Ich habe viel aus Deinen geposteten Beispielen gelernt. Danke. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:04 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz