Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Wort in SynEdit makieren/Selektieren ? [Gelöst] (https://www.delphipraxis.net/72541-wort-synedit-makieren-selektieren-%5Bgeloest%5D.html)

draGo 2. Jul 2006 14:53


Wort in SynEdit makieren/Selektieren ? [Gelöst]
 
Huhu DP,

ich bin im Moment wieder am basteln aber hänge mal wieder an einem Problem fest...
Also:

Ich habe ein Edit Feld in dem das Wort, welches gesucht werden soll eingegeben wird.
Bei Klick auf den Button wende ich dann folgenden Code an:

Delphi-Quellcode:
  Form1.SynEditSearch1.Pattern := JvDotNetEdit1.Text;
Form1.SynEditSearch1.FindAll(Form1.Eingabe.Lines.Text);
Form1.eingabe.SelStart := Form1.SynEditSearch1.Results[1];
Eingabe = SynEdit1

Aber damit springt das Programm leider nur zum Wort hin, makiert (Selektiert) es aber nicht...
Wie könnte ich das Wort jetzt makieren? ^^

Danke für eure Hilfe.
mfG
draGo

Neutral General 2. Jul 2006 15:00

Re: Wort in SynEdit makieren/Selektieren ?
 
Dafür musst du ja auch noch SelLength einstellen. Bei SelLenght = 5 z.B wird dann am SelStart die nächsten 5 Zeichen selektiert.

Gruß
Neutral General

draGo 2. Jul 2006 15:05

Re: Wort in SynEdit makieren/Selektieren ?
 
Hallo Neutral General,

danke für deine Antwort. War schonmal sehr Hilfreich :)
D.h ich muss bei SelLength die Länge des Wortes angeben...
Nur leider weiß ich nicht wie ich die herausfinde ^^'
Wie kann ich denn die Länge des Wortes (oder die Anzahl der Stellen im EditFeld) herausfinden?

mfg
draGo

3_of_8 2. Jul 2006 15:10

Re: Wort in SynEdit makieren/Selektieren ?
 
Delphi-Referenz durchsuchenlength

Neutral General 2. Jul 2006 15:18

Re: Wort in SynEdit makieren/Selektieren ?
 
Das kannst du mit PosEx machen.

Delphi-Quellcode:
uses StrUtils;

SelLength := PosEx(' ',Synedit1.Text {oder so}, SelStart+1) - SelStart;
wenn ich mich täusche müsstes so gehn.

Also in meinem Selbsgebauten Beispiel:

Delphi-Quellcode:
Richedit1.SelStart := Pos('Test',Richedit1.Text)-1;
Richedit1.SelLength := PosEx(' ',Richedit1.Text,Richedit1.SelStart+1)- Richedit1.SelStart;
und so müsste es bei dir gehn wenn ich mich nicht täusche..

Delphi-Quellcode:
Form1.SynEditSearch1.Pattern := JvDotNetEdit1.Text;
Form1.SynEditSearch1.FindAll(Form1.Eingabe.Lines.Text);
Form1.eingabe.SelStart := Form1.SynEditSearch1.Results[1];
Form1.Eingabe.SelLength:= PosEx(' ',Form1.Eingabe.Text, Form1.Eingabe.SelStart+1) - Form1.Eingabe.SelStart;
Gruß
Neutral General

draGo 2. Jul 2006 15:25

Re: Wort in SynEdit makieren/Selektieren ?
 
Ein Hallo an euch beide :)

Ein dickes Danke für eure Antworten :)
Mit
Delphi-Quellcode:
Form1.SynEditSearch1.Pattern := Edit1.Text;
Form1.SynEditSearch1.FindAll(Form1.Eingabe.Lines.Text);
Form1.eingabe.SelStart := Form1.SynEditSearch1.Results[0];
Form1.Eingabe.SelLength := Length(Edit1.text);
Makiert er es jetzt... Ähm, halbwegs.
Ein Problem besteht noch:
Wenn ich das Wort google suchen lasse makiert er nur
Code:
oogle
und lässt das G aus.
Wie könnte ich das auch noch gerade biegen?

mfg
draGo

Neutral General 2. Jul 2006 15:28

Re: Wort in SynEdit makieren/Selektieren ?
 
SelStart-1 ;)

draGo 2. Jul 2006 15:30

Re: Wort in SynEdit makieren/Selektieren ?
 
Hey,

danke für deine Hilfe ^^
Klappt jetzt wunderbar :)


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:55 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