Entwickler-Ecke
Grafische Benutzeroberflächen (VCL & FireMonkey) - Textsuche in Memo
Ulli - So 17.11.02 13:59
Titel: Textsuche in Memo
Ich habe das Beispiel zum FindDialog der Delphi Hilfe verwendet. Leider kriege ich es nicht zum laufen.
Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28:
| procedure TForm2.SuchenClick(Sender: TObject); begin FindDialog1.Position := Point(Memo1.Left + Memo1.Width, Memo1.Top); FindDialog1.Execute; end; procedure TForm2.FindDialog1Find(Sender: TObject); var FoundAt : LongInt; StartPos, ToEnd : Integer; begin with Memo1 do begin if SelLength <> 0 then StartPos := SelStart + SelLength else StartPos := 0; ToEnd := Length(Text) - StartPos; FoundAt := FindText(FindDialog1.FindText,StartPos,ToEnd,[stMachCase]); {Hier kommt bei mir die Fehlermeldung "Inkomptible Typen"}
if FoundAt <> -1 then begin SetFocus; SelStart := FoundAt; SelLength := Length (FindDialog1.FindText); end; end; end; |
Ist wahrscheinlich nur ne kleinigkeit aber irgend wie klemmt´s heute ein bischen bei mir.
Ulli :?
Keldorn - So 17.11.02 14:28
Hallo
2,5 Kleinigkeiten :
1. ich hab hier jetzt nur delphi3 - wenn sich am memo nichts geändert hat, kennt es die methode findtext nicht, ein richedit (wie im beispiel) :wink: aber schon.
2. kleiner schreibfehler [stMa
tchCase]
2.5:
Quelltext
1: 2: 3:
| else StartPos := 0; ToEnd := Length(Text) - StartPos; |
ich find die Einrückung ab Toend hier total verwirrend, da die codezeilen nicht mehr zum If-Block gehören.
Mfg Frank
Ulli - So 17.11.02 16:00
Hallo Keldorn
Thema Einrückung vergessen wir mal da das nur ein Versuch ist.
Den Schreibfehler habe ich behoben.
Dann habe ich das Memo durch ein RichEdit ersetzt bekomme aber an der selben stelle die Fehlermeldung.
Der Cursor bleibt in Zeile FoundAT nach FindDialog.FindText, stehen und die Fehlermeldung lautet "Inkompatible Typen TObjekt und String".
Ulli :?:
Keldorn - So 17.11.02 17:57
*schulterzuck*
ich hab deinen Code genau wie er was in ein projekt kopiert und ausprobiert. bei mir kommt kein fehler!
wenn es nicht viel ist, poste mal den kompletten Code der unit
ansonsten klick mal "Projekt erzeugen" im Projektmenu - manchmal is komisch ...
Frank
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!