全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1316
推到 Plurk!
推到 Facebook!

RichEdit單行反白?

答題得分者是:gemi0305
gofome
一般會員


發表:23
回覆:9
積分:6
註冊:2003-05-14

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-08-04 17:36:25 IP:61.221.xxx.xxx 未訂閱
當資料已讀入RichEdit後 再做一個迴圈,從第一列開始讀,直到最後 在讀的過程中,如何將讀到的那一列反白呢 (在ListBox時用此指令ListBox1->Selected[line]=true;即可將該列反白 ,line是用來計數累加用,指第幾列) 是不是用RichEdit1->line->string[第幾列]的第一個字設為SelStart RichEdit1->line->string[第幾列]的長度 將之反白呢 但RichEdit1->line->string[第幾列]後,沒有SelStart的功能說 要怎麼做才能將該列全部反白呢?
paf
初階會員


發表:36
回覆:70
積分:41
註冊:2002-12-27

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-08-04 18:10:27 IP:218.164.xxx.xxx 未訂閱
引言: 當資料已讀入RichEdit後 再做一個迴圈,從第一列開始讀,直到最後 在讀的過程中,如何將讀到的那一列反白呢 (在ListBox時用此指令ListBox1->Selected[line]=true;即可將該列反白 ,line是用來計數累加用,指第幾列) 是不是用RichEdit1->line->string[第幾列]的第一個字設為SelStart RichEdit1->line->string[第幾列]的長度 將之反白呢 但RichEdit1->line->string[第幾列]後,沒有SelStart的功能說 要怎麼做才能將該列全部反白呢?
RichEdit1->SelStart<--游標所在位罝 (是從文章的起頭開始算的第幾個字元,不管分行) RichEdit1->SelLength<--從游標所在位置想要反白框幾個字起來 你的意思是從第一列開始讀,讀到最後 然後每讀到的那行反白 所以結果會是全部都反白 如果是這樣的話,可參考以下的程式碼
   AnsiString s;
   s=RichEdit1->Text;
   for(int i=1;iSelStart=0;
      RichEdit1->SelLength=s.Length();
   }
發表人 - paf 於 2003/08/04 19:13:08
gofome
一般會員


發表:23
回覆:9
積分:6
註冊:2003-05-14

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-08-04 20:14:12 IP:140.117.xxx.xxx 未訂閱
抱歉呀,我沒有表達清楚 剛開始讀到第一筆資料 下一時刻時 要把前一刻反白的地方消除 但是無法卻定每一筆資料有幾個字元 謝謝
paf
初階會員


發表:36
回覆:70
積分:41
註冊:2002-12-27

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-08-04 21:20:44 IP:218.164.xxx.xxx 未訂閱
引言: 抱歉呀,我沒有表達清楚 剛開始讀到第一筆資料 下一時刻時 要把前一刻反白的地方消除 但是無法卻定每一筆資料有幾個字元 謝謝
我了解你的意思了. 但是請問在讀資料的同時,你想用迴圈來讀資料 那請問一下在跑loop時,你來得及看到每列的反白嗎? 或是你滑鼠點到哪行時..那行反白.....?? 可以麻煩請你詳細說明你的程式是要做什麼用的呢?謝謝
gofome
一般會員


發表:23
回覆:9
積分:6
註冊:2003-05-14

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-08-04 23:48:13 IP:140.117.xxx.xxx 未訂閱
引言 但是請問在讀資料的同時,你想用迴圈來讀資料------no 那請問一下在跑loop時,你來得及看到每列的反白嗎?----意思不是這樣 或是你滑鼠點到哪行時..那行反白.....?? ---------- 沒有,是當資料全部show在RichEdit裡後 在按start鍵 去讀取每資一筆資料,每一筆資料都會有動作,當執行完第一筆時 才會去call第二筆資料 因此要反白,才知道現在處理到第幾筆資料了
gemi0305
版主


發表:81
回覆:564
積分:629
註冊:2003-05-11

發送簡訊給我
#6 引用回覆 回覆 發表時間:2003-08-05 00:28:55 IP:61.224.xxx.xxx 未訂閱
gofome你好,    請參考以下程式碼:    
 
void __fastcall TForm1::Button1Click(TObject *Sender)
{
   RichEdit1->HideSelection=false;
   int At=0;
   for(int i=0; iLines->Count; i  )
      {
        RichEdit1->SelStart=At;
        RichEdit1->SelLength=RichEdit1->Lines->Strings[i].Length();
        Sleep(1000);
        At  = RichEdit1->Lines->Strings[i].Length() 2;
     }
  RichEdit1->SelLength=0;
}    
提醒一下,你還有很多文章沒結案哦... 雖然不是我答的,還是要提醒一下,其他前輩答的很辛苦的~ 國泰平安
paf
初階會員


發表:36
回覆:70
積分:41
註冊:2002-12-27

發送簡訊給我
#7 引用回覆 回覆 發表時間:2003-08-05 00:52:43 IP:218.164.xxx.xxx 未訂閱
引言: gofome你好, 請參考以下程式碼:
 
void __fastcall TForm1::Button1Click(TObject *Sender)
{
   RichEdit1->HideSelection=false;
   int At=0;
   for(int i=0; iLines->Count; i  )
      {
        RichEdit1->SelStart=At;
        RichEdit1->SelLength=RichEdit1->Lines->Strings[i].Length();
        Sleep(1000);
        At  = RichEdit1->Lines->Strings[i].Length() 2;
     }
  RichEdit1->SelLength=0;
}    
gemi0305大大讚唷......... 不知道原來RichEdit1->Lines->Strings[i]還有Length()這個可以用 還有RichEdit1->HideSelection=false這個屬性到底在做什麼呢? 原本是預設為true,但run出來時,自己用滑鼠還是可以反白 請問在什麼場合會用到HideSelection這個屬性呢? 小弟知識淺,有勞大大指點,謝謝
gemi0305
版主


發表:81
回覆:564
積分:629
註冊:2003-05-11

發送簡訊給我
#8 引用回覆 回覆 發表時間:2003-08-05 09:06:33 IP:210.66.xxx.xxx 未訂閱
paf你好,    您別客氣了~    RichEdit1->HideSelection->false;    以前唸書時曾寫過一個程式, 在RichEdit上做很久的處理,如「斷詞分析」, 是對多篇很長的文章做處理,所以當時我就利用它, 來看看文章「處理的進度到那」和「是否處理中」, 不使用的話,RichEdit的畫面會停住,要等處理完才看的到內容。 如果需要較長的處理時間,那程式好像當住一樣,    所以我就找到這個RichEdit1->HideSelection->false; 幫我解決這些問題    小弟只在此場合使用過,只能聊聊自己的用法而已~~ 國泰平安
paf
初階會員


發表:36
回覆:70
積分:41
註冊:2002-12-27

發送簡訊給我
#9 引用回覆 回覆 發表時間:2003-08-05 10:47:50 IP:218.164.xxx.xxx 未訂閱
引言: paf你好, 您別客氣了~ RichEdit1->HideSelection->false; 以前唸書時曾寫過一個程式, 在RichEdit上做很久的處理,如「斷詞分析」, 是對多篇很長的文章做處理,所以當時我就利用它, 來看看文章「處理的進度到那」和「是否處理中」, 不使用的話,RichEdit的畫面會停住,要等處理完才看的到內容。 如果需要較長的處理時間,那程式好像當住一樣, 所以我就找到這個RichEdit1->HideSelection->false; 幫我解決這些問題 小弟只在此場合使用過,只能聊聊自己的用法而已~~ 國泰平安 < face="Verdana, Arial, Helvetica"> 謝謝gemi0305的分享及回覆 小弟又多學了一項^^
系統時間:2024-06-01 22:13:19
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!