| |
|
|
Frank Tretter | ¿Cómo se puede uno en un Richedit una beliebigen Texto suchen. Hab desafortunadamente a ahora todavía nichts hier darüber gelesen.
Benutze WinXP y XProfan 8.
Bin para jede Ayuda dankbar |
|
|
| Seit 2008 endlich XProfan 10, ist einfach klasse | 30.03.2007 ▲ |
|
|
|
|
Nico Madysa | Como suchst du porque en normalen Edits? Yo sería simplemente el Texto con GetText$() auslesen y luego InStr() nehmen. |
|
|
| |
|
|
|
Frank Abbing | NICO! Asche en dein Haupt... Zum Suchen hay z.B. el Message EM_FINDTEXT. |
|
|
| |
|
|
|
Frank Tretter | |
|
|
|
| |
|
| |
|
|
|
Frank Tretter | Sorry, kenn mich no tan de. Hier el Code KompilierenMarcaSeparaciónDeclare FileName$,RichEdit&,Ende&,Suchen&,Beenden&
Declare n$,Bereich#,Gefunden&,Startsuche&,Suchtext$
Startsuche& = 0
Ende& = 0
*******************************************************************************************************************
cls
Suchen& = Control(Button,Suchen,$40000000+$10000000+$10000,420,10,200,22,%hwnd,20000,%HINSTANCE)
Beenden& = Control(Button,Ende,$40000000+$10000000+$10000,420,40,200,22,%hwnd,20001,%HINSTANCE)
RichEdit& = Create(RichEdit,%hwnd,,0,5,400,300)
RTF laden
FileName$ = LoadFile$(Als RTF öffnen,*.RTF)
RTF(LoadRTF,Richedit&,Filename$)
setfocus(Richedit&)
Tastatur und Maus abfragen
WhileNot Ende&
Case Getfocus(Beenden&) : Ende& = 1
If Getfocus(Suchen&)
n$ = Klaus--Dieser Text soll gesucht werden(Nur zum Beispiel)
Suchtext$ = GetText$(RichEdit&)--Text aus Richedit
DIM Bereich#,32000
clear Bereich#
String Bereich#,0 = Suchtext$
Gefunden& = MemPos(Bereich#,Startsuche&,n$)
Startsuche& = Gefunden&+Len(n$)
Sendmessage(Richedit&,$00B1,Gefunden&,Gefunden&+Len(n$))--Cursor setzen
setfocus(Richedit&)
Dispose Bereich#--Hatt ich vergessen
EndIf
ENDWHILE
Yo möchte en großen Texten después de Wörtern suchen. de hecho puede ser daß el gesuchte Wort mehrmals vorkommt, deshalb se uno así largo suchen a uno el richtige Punto gefunden ha. |
|
|
| Seit 2008 endlich XProfan 10, ist einfach klasse | 30.03.2007 ▲ |
|
|
|
|
Frank Abbing | Es no sonderlich schwer: KompilierenMarcaSeparaciónDeclare x&
If Getfocus(Suchen&)
n$=Klaus--Dieser Text soll gesucht werden(Nur zum Beispiel)
DIM Bereich#,16
clear Bereich#
x&=-1
While 1
Long bereich#,0=x&+1
Long bereich#,4=-1
Long bereich#,8=Addr(n$)
x&=Sendmessage(Richedit&,$0438,1,bereich#)--EM_FINDTEXT (1=Flagparameter)
Case x&=-1:BREAK
Sendmessage(Richedit&,$00B1,x&,x&+Len(n$))--Cursor setzen
SetFocus(Richedit&)
Sleep 500
EndWhile
SetFocus(Richedit&)
Dispose Bereich#--Hatt ich vergessen
EndIf
En el Flagparametern kannst du todavía bestimmen, si el Suchbegriffe exakt así stimmen muss (Klein/Grossbuchstaben), si el Suchbegriff una vollständiges Wort en el Texto ser muss, usw. |
|
|
| |
|
|
|
Frank Tretter | Vielen Dank, genau el Yo gesucht habe. Hast me muy weitergeholfen, ahora kann Yo a mi Editor weiterbasteln.
Nochmals Gracias a todos, gruß Fränki |
|
|
| Seit 2008 endlich XProfan 10, ist einfach klasse | 30.03.2007 ▲ |
|
|
|
|
Nico Madysa |
NICO! Asche en dein Haupt... Zum Suchen hay z.B. el Message EM_FINDTEXT.
Mag durchaus ser, Yo sería trotzdem así suchen, como Yo el Message ahora sólo kennen gelernt habe. |
|
|
| |
|
|
|
Frank Abbing | Spricht nichts dagegen. Jedoch es esta Método no en grossen Archivos anzuraten, porque irgendwann el Speicher knapp se. Dann son zwei Kopien zeitgleich no ratsam. |
|
|
| |
|
|