![]() |
Text makieren!
Hi!
Ich bin grad dran einen Texteditor zu programmieren. Natürlich darf da die Suchfunktion nicht fehlen. Hab folgenden Code:
Code:
Nur wie kann ich jetzt das gefundene Wort makieren (blau hinterlegen)?
procedure TForm1.Suchen1Click(Sender: TObject);
var suchwort:string; begin FindDialog1.Execute; suchwort:=FindDialog1.FindText; if Memo1.Lines.IndexOf(Suchwort)<>-1 then Memo1.Lines else ShowMessage(Suchwort+'nicht gefunden !'); end; Bye Locutus |
Hi,
bei der Memo.Kompo gibt es die Eigenschaften SelLength, SelStart, SelText SelLength : Die Eigenschaft SelLength gibt die Anzahl der markierten Zeichen (Bytes) an. SelStart : Die Eigenschaft SelStart gibt die Position des ersten markierten Zeichens im Text an. SelText : Die Eigenschaft SelText gibt den markierten Textbereich des Eingabefeldes an. Das sind alles aus der Delphi Hilfe mit einem Beispiel, was sogar eine Suche beschreibt. |
Moin,
ich schliesse mich dem Vorredner an. Ein kleinen Tip habe ich allerdings noch. In der Button-Prozedur, schreib nur FindDialog.Execute; rein. Und für den restlichen Code zum Markieren, die OnFind-Prozedur des Dialogs. Ein bisschen was zum Thema SelStart usw. gibt es hier: ![]() Grüsse, Daniel :hi: |
Moin Locutus,
erst einmal herzlich willkommen. Wenn Du Dir das Suchen etwas erleichtern willst, dann kannst Du statt des TMemo mal ein TRichEdit nehmen. Das kennt die Methode FindText. BTW: Assimilieren is' nicht ;-) |
Danke
Danke sehr!
Ihr habt mir sehr geholfen. Übrigens is das für die Schule und da darf ich nur eine Memokomponente benutzen! Und das mit dem assimilieren überleg ich mir noch :twisted: Bye Locutus |
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:34 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz