2014-01-14 44 views
0

如果我在TRichEdit控件內部單擊,如何從鼠標客戶機座標獲取線索引(我已單擊)?RichEdit從像素位置獲取線

換句話說,如何將客戶端座標轉換爲線索引?

***編輯 我實際上沒有在TRichEdit控件中單擊,我點擊了另一個控件並需要與TRichEdit控件的行號同步。

回答

1

發送EM_CHARFROMPOSEM_LINEFROMCHAR消息給RichEdit,如:

POINTL pt = ...; // client coordinates 
int pos = RichEdit1->Perform(EM_CHARFROMPOS, 0, (LPARAM)&pt); 
int idx = RichEdit1->Perform(EM_LINEFROMCHAR, pos, 0); 
+0

啊,我知道我已經看到一些關於這一點,但我無法找到的消息... –