Thema: Delphi SynEdit durchsuchen

Einzelnen Beitrag anzeigen

Benutzerbild von s.h.a.r.k
s.h.a.r.k

Registriert seit: 26. Mai 2004
3.159 Beiträge
 
#2

Re: SynEdit durchsuchen

  Alt 13. Jun 2005, 20:01
Also: Du hast ja schon eine SynEdit- und eine SynEditSearch-Komponente. Dann weißt du im Objektinspektor dem SynEdit die SynEditSearch zu - und zwar als SearchEngine. Dann brauchst du auch noch einen normalen FindDialog. Beim OnFind-Ereignis des FindDialogs schreibst du dann folgendes rein:
Delphi-Quellcode:
procedure TCreatorForm.FindDialogFind(Sender: TObject);
var
  rOptions: TSynSearchOptions;
  dlg: TFindDialog;
  sSearch: String;
begin
  if (Sender = ReplaceDialog) then
    dlg := ReplaceDialog
  else
    dlg := FindDialog;
  sSearch := dlg.FindText;
  if Length(sSearch) = 0 then begin
    Beep;
    Messagedlg('Bitte geben Sie einen Suchbegriff ein.', mtInformation, [mbOk], 0);
  end else begin
    rOptions := [];
    if not (frDown in dlg.Options) then
      Include(rOptions, ssoBackwards);
    if frMatchCase in dlg.Options then
      Include(rOptions, ssoMatchCase);
    if frWholeWord in dlg.Options then
      Include(rOptions, ssoWholeWord);
    if Memo.SearchReplace(sSearch, '', rOptions) = 0 then begin
      Beep;
      Messagedlg('Der Suchbegriff "' + sSearch + '" konnte nicht gefunden werden!', mtInformation, [mbOk], 0);
    end;
  end;
end;
»Remember, the future maintainer is the person you should be writing code for, not the compiler.« (Nick Hodges)
  Mit Zitat antworten Zitat