der Betreff ist wahrscheinlich nicht sehr doll, aber ein besserer ist mir nicht eingefallen. Es geht um Folgendes: In Delphi habe ich meinen Programmen (nichts großes, eher kleine Tools) ein Meldungsfenster spendiert, in das ich dann Meldungen reingeschubst habe a la
Code: Alles auswählen
Meldung ('Das ist ein Test'#13#10'mit zwei Zeilen',Warnung);
11:03:15 Das ist ein Test
mit zwei Zeilen
Und je nachdem, ob Meldung mit dem Parameter Info, Warnung oder Fehler aufgerufen wurde, waren die Zeilen Rot, orange oder grün.
Mein Problem ist, dass ich keine Ahnung habe, wie ich das mit einem SynEdit realisieren soll. Naheliegend wäre ja folgendes (stark vereinfacht)
Code: Alles auswählen
procedure TFormXYZ.Meldung(const pcsText:string;const pcMeldungsart:TMeldungsArt);
var lvnColor:TColor;
begin
case pcMeldungsArt of
Info: lvnColor:=clGreen;
Warnung: lvnColor:=clOrange; //keine Ahnung, Farbe müsste ich erst basteln
Fehler: lvnColor:=clRed;
end;
with MySynEdit Do begin
SelStart:=1;
SelEnd:=1;
SelText:=FormatDateTime('hh:nn:ss',Now)+#9+pcsText;
SelectedColor.Foreground:=lvnColor;
SelStart:=1;
end;
end;
Anm: In der Realität ist das noch etwas komfortabler implementiert, aber das Kernproblem bleibt bestehen