線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:834
推到 Plurk!
推到 Facebook!

請問FindDialog收尋到字串可是只有標記字串沒有移到他的位置

尚未結案
anaconda1813
一般會員


發表:29
回覆:29
積分:11
註冊:2004-10-12

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-03-05 23:51:47 IP:222.156.xxx.xxx 未訂閱
我用FindDalog去收尋字串,可是他只有標記出來說是哪個字    如果超過RichEdit的畫面,他卻不會幫我像是Windows那樣會移到他的所在位置    請問移到他的所在位置程式碼是什麼呢??    收詢的程式碼是這樣
void __fastcall TForm1::FindDialog1Find(TObject *Sender)
{
     int  StartPos, ToEnd;
     
      if (RichEdit1->SelLength>0)
    
     StartPos = RichEdit1->SelStart   RichEdit1->SelLength;
         else
     StartPos = 0;          ToEnd = RichEdit1->Text.Length() - StartPos;
      FoundAt = RichEdit1->FindText(FindDialog1->FindText, StartPos, ToEnd, TSearchTypes());
      if (FoundAt != -1)
      {
      RichEdit1->SetFocus();
      RichEdit1->SelStart = FoundAt;
      RichEdit1->SelLength=FindDialog1->FindText.Length();
      }
      else
       ShowMessage("找不到字串"    }    
yorkland
高階會員


發表:2
回覆:138
積分:108
註冊:2004-12-17

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-03-06 02:36:33 IP:203.70.xxx.xxx 未訂閱
沒錯, Find指令沒辦法自動移到找到的那個位置。 你必須算出該字串所以的行數, 利用Perform指令, 趨動Scrollbox將畫面移到你要的那一頁。
系統時間:2024-06-07 12:15:47
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!