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

RichEdit 如何跳至某一行

 
robert1014
初階會員


發表:34
回覆:85
積分:43
註冊:2002-03-13

發送簡訊給我
#1 引用回覆 回覆 發表時間:2002-06-04 18:24:34 IP:61.222.xxx.xxx 未訂閱
這幾天,搜尋了不少的文章、討論區 也試了好多次,RichEdit可以捲動scroll 但是若RichEdit編輯區域,在未滿一頁時 要如何將游標移至某一行? SelStart的方式,不可行,因為編輯中 字數會新增、減少。 真的沒有甚麼指令,可以在RichEdit中 將游標移至某一行嗎?
領航天使
站長


發表:12216
回覆:4186
積分:4084
註冊:2001-07-25

發送簡訊給我
#2 引用回覆 回覆 發表時間:2002-06-04 18:40:01 IP:192.168.xxx.xxx 未訂閱
引言: 這幾天,搜尋了不少的文章、討論區 也試了好多次,RichEdit可以捲動scroll 但是若RichEdit編輯區域,在未滿一頁時 要如何將游標移至某一行? SelStart的方式,不可行,因為編輯中 字數會新增、減少。 真的沒有甚麼指令,可以在RichEdit中 將游標移至某一行嗎?
var i,j,n:integer; s:string; begin n:=2; // 移到第二行 s:=memo1.Lines.Text; j:=1; for i:=1 to length(s) do begin if (j=n) then begin memo1.SelStart:=i; break; end; if s[i]=#13 then inc(j); end; end; 先試試看! ~~~Delphi K.Top討論區站長~~~
------
~~~Delphi K.Top討論區站長~~~
hagar
版主


發表:143
回覆:4056
積分:4445
註冊:2002-04-14

發送簡訊給我
#3 引用回覆 回覆 發表時間:2002-06-05 08:17:06 IP:211.22.xxx.xxx 未訂閱
試試下面的做法(跳至第 5 行第 10 格):

with RichEdit1 do begin
  SelStart := Perform(EM_LINEINDEX, 5, 0)   10;
  Perform(EM_SCROLLCARET, 0, 0);
  SetFocus;
end;
robert1014
初階會員


發表:34
回覆:85
積分:43
註冊:2002-03-13

發送簡訊給我
#4 引用回覆 回覆 發表時間:2002-06-05 12:02:07 IP:61.222.xxx.xxx 未訂閱
太感謝兩位的幫忙,現問題已經解決了 先前也有試過EM_LINEINDEX, 但沒有執行EM_SCROLLCARET 以致於沒有動作。 在這個討論區,有各位的幫忙 真是太好了................
領航天使
站長


發表:12216
回覆:4186
積分:4084
註冊:2001-07-25

發送簡訊給我
#5 引用回覆 回覆 發表時間:2002-06-05 12:35:22 IP:61.219.xxx.xxx 未訂閱
引言: 試試下面的做法(跳至第 5 行第 10 格):

with RichEdit1 do begin
  SelStart := Perform(EM_LINEINDEX, 5, 0)   10;
  Perform(EM_SCROLLCARET, 0, 0);
  SetFocus;
end;
謝謝回覆,又多學一招! ~~~Delphi K.Top討論區站長~~~
------
~~~Delphi K.Top討論區站長~~~
系統時間:2024-04-20 20:09:26
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!