Farben aus OnSpecialLineColors werden nicht direkt übernommen.
Moin,
ich benutze folgenden Code, um alle Zeilen die einen Mark enthalten, zu färben:
Delphi-Quellcode:
procedure TForm1.SynEdit1SpecialLineColors(Sender: TObject; Line: Integer;
var Special: Boolean; var FG, BG: TColor);
var
i: integer;
begin
i := 0;
Special := false;
while (i < SynEdit1.Marks.Count) and not Special do
begin
if SynEdit1.Marks.Items[i].Line = Line then
begin
FG := clWhite;
BG := clGray;
Special := true;
end;
inc(i);
end;
end;
Nun funktioniert dies aber nur, wenn während dem Event OnSpecialLineColors das SynEdit verdeckt ist, z.B. beim Debuggen, ist dies nicht der Fall, bleibt die Zeile weiß. Ist die Zeile nur zur Hälfte verdeckt, wird auch nur die verdeckte Hälfte der Zeile grau.
Bei der SimpleIDEDemo funktioniert dies ohne Probleme (aber ich habe keinen entsprechenden Code gefunden, bzw. die Einstellungen sind mit meinem SynEdit identisch)
Wie kann ich das SynEdit dazu bewegen, direkt die komplette Zeile zu färben ?
Gruß