2014-01-14 47 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

啊,我知道我已经看到一些关于这一点,但我无法找到的消息... –