Ich habe in meinem Project u.a. die Komponenten SynEdit und Finddialog.
Finddialog ist so eingestellt das nur der Suchtext eingegeben werden kann, sowie die Buttons "Find" und "Cancel" vorhanden sind.
Das Problem ist folgendes:
Wenn ich den im Finddialog gesuchten Text gefunden habe und er im SynEdit angezeigt wird, drücke ich "Cancel" auf dem Finddialog, weil ich den Text in der Zeile jetzt weiter bearbeiten möchte.
Beim "Cancel" springt die Anzeige des in SynEdit geladenen Textes aber wieder in die erste Zeile!
Wie kann ich, wenn ich die Suche abbrechen will, in der Zeile des gefundenen Eintrags bleiben?
Gruß
Michael
Code: Alles auswählen
//Im Editfeld suchen und bei Treffer hinspringen
procedure TEditorForm.SuchenSpeedButtonClick(Sender: TObject);
begin
FindDialog1.Execute;
end;
procedure TEditorForm.FindDialog1Find(Sender: TObject);
begin
if SynEdit1.SearchReplace(FindDialog1.FindText, '', [])=0 then MessageDlg('Kein Treffer','Der Suchtext wurde nicht gefunden.',mtInformation,[mbOK],0);
end;