Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Auslesen, wo man sich in einem Memo befindet... (https://www.delphipraxis.net/31306-auslesen-wo-man-sich-einem-memo-befindet.html)

XaRidA_THEONLY 7. Okt 2004 08:05


Auslesen, wo man sich in einem Memo befindet...
 
Hallo zusammen,

und wiedereinmal ist es so weit...

Ich habe ein Problem und weiss nicht wie weiter.. :gruebel:

Also: ich suche in einem Memo einen bestimmten Text ahnhand der Position, das funktioniert auch super, doch wie kann ich mir nun, wenn er den Text gefunden hat anzeigen lassen auf wecher Zeile sich dieser befindet???

Oder wie kann ich direkt nach einer bestimmten Zeile suchen???

Kann mir evt. jemand helfen???

Wäre echt super.


Thanks XaRidA :angel:

Stevie 7. Okt 2004 09:29

Re: Auslesen, wo man sich in einem Memo befindet...
 
Der Text einer TMemo-Komponente wird intern als TStrings gespeichert. Guck dir dazu mal die Member-Funktion IndexOf von TStrings an.

XaRidA_THEONLY 7. Okt 2004 10:06

Re: Auslesen, wo man sich in einem Memo befindet...
 
Jetzt habe ich jedoch wieder das gleiche Prob. wie vorher.

Ich finde zwar meine Zeile, jedoch weiss ich immer noch nicht, wie ich mir anzeigen lassen kann, auf welcher Zeile sich der Text befindet...

Übrigens, wais jemand wie ich anhand einer Position die Zeile in der sie sich befindet herausfinden kann?????

XaRidA

Stevie 7. Okt 2004 10:12

Re: Auslesen, wo man sich in einem Memo befindet...
 
Ok, guckst du hier

himitsu 7. Okt 2004 10:15

Re: Auslesen, wo man sich in einem Memo befindet...
 
Also zum auslesen der aktuellen Postition hatte ich mir mal sowas gebastelt ... statt Memo1.SelStart könnte man ja auch 'ne andere Position verwenden.
Delphi-Quellcode:
  i := 0; i2 := 0;
  While i < Memo1.Lines.Count do Begin
    Inc(i2, Length(Memo1.Lines.Strings[i]));
    If i2 < Memo1.SelStart Then Break;
    Inc(i);
  End;

  > Die aktuelle Zeile ist i.
Aber hier könnte man es so machen - einfach jede Zeile einzeln durchsuchen :zwinker:
Delphi-Quellcode:
  If Memo1.Lines.IndexOf('dein gesuchtes Wort') > 0 Then Begin
    For i := 0 to Memo1.Lines.Count - 1 do Begin
      If Pos('dein gesuchtes Wort', Memo1.Lines.Strings[i]) > 0 Then Break;
      Inc(i);
    End;
    > Die Position ist i.
  End Else > nichts gefunden

XaRidA_THEONLY 7. Okt 2004 10:45

Re: Auslesen, wo man sich in einem Memo befindet...
 
Hey Merci...
das funzt!!!!! :thumb:

XaRidA :angel:


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:13 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz