Hi,
die Position des Caret bleibt erhalten, wenn du ein anderes Control fokusierst. Lediglich der visuelle Effekt fällt beim Verlassen des SynEdit weg. Der kommt wieder, wenn du das SynEdit-Control wieder fokusierst. Wenn bei dir die Position scheinbar vergessen wird, dann hast du wohl mit der Maus in das SynEdit-Control geklickt. Dabei wird die Position des Carets sofort angepasst.
Willst du dieses Verhalten ändern?
Delphi-Quellcode:
procedure TDemoForm.SynEditExit(Sender: TObject);
begin
with Sender as TSynEdit do
Tag := SelStart;
end;
procedure TDemoForm.SynEditClick(Sender: TObject);
begin
with Sender as TSynEdit do
if Tag <> 0 then
begin
SelStart := Tag;
Tag := 0;
end else Abort;
end;
Freundliche Grüße