取得TMemo裡的游標位置 |
答題得分者是:syntax
|
00156
高階會員 發表:45 回覆:195 積分:112 註冊:2002-06-01 發送簡訊給我 |
|
terrychen
尊榮會員 發表:90 回覆:794 積分:501 註冊:2003-05-01 發送簡訊給我 |
|
00156
高階會員 發表:45 回覆:195 積分:112 註冊:2002-06-01 發送簡訊給我 |
|
terrychen
尊榮會員 發表:90 回覆:794 積分:501 註冊:2003-05-01 發送簡訊給我 |
|
00156
高階會員 發表:45 回覆:195 積分:112 註冊:2002-06-01 發送簡訊給我 |
我目前用下面的方法取得座標位置:
var Pixel_X,Pixel_Y:integer; Pixel_X:=Memo1.CaretPos.X*11; //11是我字型的大小(pt) Pixel_Y:=Memo1.CaretPos.Y*20; //試驗的結果,11 pt的字型含行距大約佔20 pixel這樣遇到了一個問題...當Scroll Bar捲動時,CaretPos必須減去左上角的行列數(取得相對值)...所以程式變成: var Pixel_X,Pixel_Y:integer; LeftCol,TopRow:integer; //LeftCol:=??? <==不知道如何取得 TopRow:=SendMessage(code.Handle, EM_GETFIRSTVISIBLELINE, 0, 0); //取得第一列的"列"值 Pixel_X:=(Memo1.CaretPos.X-LeftCol)*11; //11是我字型的大小(pt) Pixel_Y:=(Memo1.CaretPos.Y-TopRow)*20; //試驗的結果,11 pt的字型含行距大約佔20 pixel可是要如何取得LeftCol?或者有更簡便、直接取得座標的方法?請提供一下經驗,謝謝! |
00156
高階會員 發表:45 回覆:195 積分:112 註冊:2002-06-01 發送簡訊給我 |
謝謝你~~~不過下面的文章並沒有這部份可參考,倒是http://delphi.ktop.com.tw/topic.php?TOPIC_ID=29900提供取得第一列的方法 <>< face="Verdana, Arial, Helvetica">引言:
Sorry小弟沒看清楚說你不要CaretPos
再參考http://delphi.ktop.com.tw/topic.php?topic_id=27994
~~應無所住而生其心~~ 發表人 - Terrychen 於 2004/01/13 14:20:20
|
terrychen
尊榮會員 發表:90 回覆:794 積分:501 註冊:2003-05-01 發送簡訊給我 |
您好:
因『取得座標值(in pixel),而不是行列值』
http://delphi.ktop.com.tw/topic.php?TOPIC_ID=29900
所以小弟以為您要的是『 Pixels[X][Y] 自己取灰階值吧』
http://delphi.ktop.com.tw/topic.php?topic_id=27994
那
P:=aInMemo.CaretPos; //Save目前游標位置(第y行,第x位置
CurPos:=aInMemo.selStart; //Save目前游標位置
LastPos:=(Length(aInMemo.Lines.Text)-2); //Save目前Memo目前最後後位置
這樣遇到了一個問題...當Scroll Bar捲動時,CaretPos必須減去左上角的行列數(取得相對值)...
這可達到您想要的ㄇ ~~應無所住而生其心~~
|
Mickey
版主 發表:77 回覆:1882 積分:1390 註冊:2002-12-11 發送簡訊給我 |
|
00156
高階會員 發表:45 回覆:195 積分:112 註冊:2002-06-01 發送簡訊給我 |
|
syntax
尊榮會員 發表:26 回覆:1139 積分:1258 註冊:2002-04-23 發送簡訊給我 |
|
00156
高階會員 發表:45 回覆:195 積分:112 註冊:2002-06-01 發送簡訊給我 |
|
syntax
尊榮會員 發表:26 回覆:1139 積分:1258 註冊:2002-04-23 發送簡訊給我 |
|
00156
高階會員 發表:45 回覆:195 積分:112 註冊:2002-06-01 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |