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

RichEdit中儲存某個範圍的字串

尚未結案
wena
一般會員


發表:26
回覆:37
積分:12
註冊:2005-07-20

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-09-10 21:51:34 IP:61.225.xxx.xxx 未訂閱
請問有沒有什麼函式,除了用for迴圈外 可以一次將RichEdit中某個範圍的字串存入變數temp中 比如:RichEdit中含有 第1行: AAAA 2 BBBB 3 CCCC 4 DDDD 5 EEEE temp = CCCC DDDD
wena
一般會員


發表:26
回覆:37
積分:12
註冊:2005-07-20

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-09-10 21:53:44 IP:61.225.xxx.xxx 未訂閱
忘了指定 這是BCB問題
Stallion
版主


發表:52
回覆:1600
積分:1995
註冊:2004-09-15

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-09-10 23:08:49 IP:211.22.xxx.xxx 未訂閱
請查一下TRichEdit的SelStart,SelLength,SelText方法。先看看下面這篇吧!
RedSnow
版主


發表:79
回覆:1322
積分:845
註冊:2003-12-15

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-09-11 13:23:49 IP:59.115.xxx.xxx 未訂閱
wena 您好:    RichEdit 的 Text 屬性是 AnsiString 型態的資料,您可以使用 AnsiString 的各個函式來處理它,Pos() 可以找到子字串的位置、SubString() 提供了擷取子字串的功能,試試看吧。      7 天天敲鍵盤 v 時時按滑鼠 8
wena
一般會員


發表:26
回覆:37
積分:12
註冊:2005-07-20

發送簡訊給我
#5 引用回覆 回覆 發表時間:2005-09-12 13:05:05 IP:218.162.xxx.xxx 未訂閱
我是使用下列的方式啦 但我覺得輸出的範圍不是很精確 我看不出程式的問題呢 麻煩幫我查看看    

TopRow = CSpinEdit1->Text.ToInt();
BottomRow = CSpinEdit2->Text.ToInt();
for(i=0 ; i<=RichEdit1->Lines->Count ; i  ) 
{
  if(i == TopRow)  //子字串的第一個字
  {
    Start = Count   1;
  }
  else if(i == BottomRow) //子字串的最後一個字
  {
    Final = Count   RichEdit1->Lines->Strings[i].Length();
  }
  Count = Count   RichEdit1->Lines->Strings[i].Length();
}
RichEdit5->Text = temp.SubString(Start,Final);
其中空掉的地方是
RedSnow
版主


發表:79
回覆:1322
積分:845
註冊:2003-12-15

發送簡訊給我
#6 引用回覆 回覆 發表時間:2005-09-13 00:10:15 IP:59.115.xxx.xxx 未訂閱
wena 您好:    如果您僅需要擷取連續數個整行資料,那麼以下的簡單方式就可以達到目的:
AnsiString substr = "";
int TopRow = CSpinEdit1->Text.ToInt();
int BottomRow = CSpinEdit2->Text.ToInt();
for(int i=TopRow; i<=BottomRow; i  ){
    substr = substr   RichEdit1->Lines->Strings[i]   "\r\n";
}
RichEdit5->Text = substr;
如果不需要取得字串資料的緩衝過程,那麼您還可以進一步簡化處理過程如下:
int TopRow = CSpinEdit1->Text.ToInt();
int BottomRow = CSpinEdit2->Text.ToInt();
RichEdit2->Lines->Clear();
for(int i=TopRow; i<=BottomRow; i  ){
    RichEdit2->Lines->Add(RichEdit1->Lines->Strings[i]);
}
7 天天敲鍵盤 v 時時按滑鼠 8
wena
一般會員


發表:26
回覆:37
積分:12
註冊:2005-07-20

發送簡訊給我
#7 引用回覆 回覆 發表時間:2005-09-13 10:07:54 IP:218.162.xxx.xxx 未訂閱
嗯!謝謝你
系統時間:2024-05-03 15:45:18
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!