Farbliche Kennzeichnung eines Strings in einem Memo
-
- Lazarusforum e. V.
- Beiträge: 560
- Registriert: So 10. Sep 2006, 23:24
- OS, Lazarus, FPC: Linux Mint 22; Lazarus 4.0 FPC 3.2.2; RaspiOS
- CPU-Target: AMD 64, ARM 64
- Wohnort: nr Stuttgart
Farbliche Kennzeichnung eines Strings in einem Memo
Hallo,
ich suche in einem LogFile nach bestimmten Schlüsselwörtern, die ich farblich kennzeichnen möchte. Ich habe keine Ahnung, wie man in einem Memo einzelne Wörter farblich markieren kann. Wer hat einen Tipp?
Gruß, Linkat
ich suche in einem LogFile nach bestimmten Schlüsselwörtern, die ich farblich kennzeichnen möchte. Ich habe keine Ahnung, wie man in einem Memo einzelne Wörter farblich markieren kann. Wer hat einen Tipp?
Gruß, Linkat
-
- Lazarusforum e. V.
- Beiträge: 560
- Registriert: So 10. Sep 2006, 23:24
- OS, Lazarus, FPC: Linux Mint 22; Lazarus 4.0 FPC 3.2.2; RaspiOS
- CPU-Target: AMD 64, ARM 64
- Wohnort: nr Stuttgart
Hallo,
habe jetzt mit der Property Highlighter mit den diversen Attributen rumgespielt. Funktioniert soweit sehr gut, solange das Schlüsselwort nur ein Wort ist. Mein Problem aber ist, dass der Suchtext (Fehlermeldungen aus dem Logfile) meist aus mehreren Worten besteht. Dann wird eben nichts markiert.
Hat noch jemand eine Idee?
Gruß, Linkat
habe jetzt mit der Property Highlighter mit den diversen Attributen rumgespielt. Funktioniert soweit sehr gut, solange das Schlüsselwort nur ein Wort ist. Mein Problem aber ist, dass der Suchtext (Fehlermeldungen aus dem Logfile) meist aus mehreren Worten besteht. Dann wird eben nichts markiert.
Hat noch jemand eine Idee?
Gruß, Linkat
Das kannst du eigentlich auch mit Lazarus und dem IpHTMLPanel.
Einfach den Log-Text mit HTML versehen.
Beispiel:
Einfach den Log-Text mit HTML versehen.
Beispiel:
Code: Alles auswählen
procedure StringToMemStream(AString: string; Strm: TMemoryStream);
var Len: integer;
begin
if Strm <> nil then
begin
Len := Length(AString);
Strm.Size := Len;
Strm.Position := 0;
Strm.Write(PChar(AString)^, Len);
Strm.Position := 0;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
var MemS:TMemoryStream;
NewHTML:TIpHtml;
AHTML:String;
begin
MemS:=TMemoryStream.Create;
AHTML:='<html><body>test <b>test</b> test <br>test <font color="red"><b>test</b></font> test </body></html>';
StringToMemStream(AHTML, MemS);
NewHTML:=TIpHtml.Create;
NewHTML.LoadFromStream(MemS);
IpHtmlPanel1.SetHtml(NewHTML);
MemS.free;
end;