Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 3 odgovora
  • 3.904 pregleda

Najnovija ↓

Rad sa Find\Replace Dialogom 19.03.2006. u 16:12 · pre 251 mesec #1
Ovo znam:

OnButton1->Click
{
ReplaceDialog1->FindText = RichEdit1->SelText;
ReplaceDialog1->Execute();
}
Ovim otvaram ReplaceDialog stim da mi je Find Text jednak Selektovanom tekstu u richeditu.
ReplaceText je kucam i kliknem na dugme replace.Dialog zameni selektovanu rec sa ukucanom reci.

ovo ne znam:

Napisem u OnButton1->Click-u
{
ReplaceDialog1->FindText = RichEdit1->SelText;
ReplaceDialog1->ReplaceText = "Zamena";
e sad kako da ne otvarajuci ReplaceDialog nekom funkcijom pritisnem dugme replace koje se nalazi na replace dialogu,koje ce da zameni Selektovan Tekst sa "Zamena"?
}
Re: Rad sa Find\Replace Dialogom 19.03.2006. u 17:26 · pre 251 mesec
izmenjeno 1 put, poslednji put X Files 19.03.2006. u 21:25
  1. X Files19.03.2006. u 21:25zapis iz teksta poruke
#2
Vec si gledao primer u BCB, zar ne?

Primetio si da je TVOJA odgovornost da napravis funkcije za Find(), Replace(), itd...

Dakle, trebalo bi da moze ovako (NETESTIRANO), mozda uz neke modifikacije
u funkciji Replace, da ne zastajkuje. U svakom slucaju ne bi trbalo da bude
isuvise tesko napraviti posebnu funkciju za zamenu, teksta i da ne koristis
te dijaloge...

Code:

void __fastcall TFormMain::Button1Click(TObject *Sender)
{
    ReplaceDialog1->FindText = "ex";
    ReplaceDialog1->ReplaceText = "XE";
    Replace( ReplaceDialog1 );
}
Re: Rad sa Find\Replace Dialogom 19.03.2006. u 17:32 · pre 251 mesec #3
Na primer:
Code:

void __fastcall TForm1::Button1Click(TObject *Sender)
{
   AnsiString SearchString =  "ex"; // <--- ONO ŠTO TRAŽIŠ
   int iSearchLength = SearchString.Length();

   AnsiString ReplaceString = "xe"; // <--- OMO ŠTO MENJAŠ
   int iReplaceLength = ReplaceString.Length();

   int iRichEditLength = RichEdit1->GetTextLen();
   TSearchTypes options;    // <--- PODESI KAKO TI OFGOVARA

   int pos = RichEdit1->FindText( SearchString, 0, iRichEditLength, options );

   if ( pos > -1 )
   {
      RichEdit1->Lines->BeginUpdate();
      try
      {
         do
         {
            RichEdit1->SelStart = pos;
            RichEdit1->SelLength = iSearchLength;
            RichEdit1->SelText = ReplaceString;
            pos = RichEdit1->FindText( SearchString, pos + iReplaceLength, iRichEditLength - ( pos + iReplaceLength ), options );
         }
         while( pos > -1 );
      }
      __finally
      {
         RichEdit1->Lines->EndUpdate();
      }
   }
}
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme