Textsuche (aufwärst) in einer Rich TextBox
-
Hallo C++ Gemeinde
Ich versuche in einer Rich Text Box eine Textsuche von der Cursorposition an aufwärts zu realisieren. Leider bisher ohne Erfolg ...
Als Compiler kommt Power++ zum Einsatz.
Der Benutzer gibt in der Find/Replace Box an ob eine Suche aufwärts oder abwärts gemacht werden soll.
Die Suche abwärts ist fertig, die Suche aufwärts bereitet mir große SchwiergkeitenKann mir jemand helfen ??
Der Code sieht bisher so aus :
C/C++ Code:
WBool Form1::Suchen_Ersetzen_Dialog_1_FindReplace(
WObject * source,
WFindReplaceEventData * event )
{
WLong position;
WString suchtext;
WRange zeichen_index;
WLong text_laenge;
WBool ganzwort;ganzwort = event->wholeWord;
/*------------------------ Suchen einer Zeichenkette ---------------------*/
if (event->findNext)
{
suchtext = Suchen_Ersetzen_Dialog_1->GetFindText();
if (event->searchDown)
{
position = Richtextfeld_1->FindText( suchtext, FALSE, ganzwort, beginAt );
if (position < 0)
{
position = Richtextfeld_1->FindText(suchtext);
}
text_laenge = suchtext.GetLength();
zeichen_index.start = position;
zeichen_index.end = position + text_laenge;
beginAt = zeichen_index.end;Richtextfeld_1->SetFocus( );
Richtextfeld_1->SetEditSelection( zeichen_index );
}
else
{
// Und hier weiß ich nicht weiter}
}
return FALSE;
}An die Funktion "FindText" können folgende Paramter übergeben werden :
- WBool CaseSensitive (für Groß/Kleinschreibung)
- WBool MatchWholeWord (ganzes Wort)
- WLong beginAt (Zeichen ab dem gesucht werden soll)
- WLong endAt (Zeichen bis zu dem gesucht werden soll)