如何取得Richedit中光标所在位置的屏幕座标(100分)

  • 主题发起人 主题发起人 lemondu
  • 开始时间 开始时间
L

lemondu

Unregistered / Unconfirmed
GUEST, unregistred user!
目的:当光标位置不在richedit的可视范围内的时候自动卷滚到当前行。
 
aPoint: TPoint;
begin
GetCursorPos(aPoint);
//aPoint中即为屏幕位置。
end;
 
光标还是鼠标?
光标位置如下:
richedit1.CaretPos.X(Y)
 
类似这个,改一下就行了。
http://www.delphibbs.com/delphibbs/dispq.asp?lid=1502621
 
GetCaretPos
然后
ClientToScreen
 
使 RichEdit 当前行可见:

richedit1.Perform(EM_SCROLLCARET ,0,0);
richedit1.setfocus;
 
我想你无非是这种情况:
当当前控件不是richEdit时,让richedit的行为当前行。
if (ActiveControl as TRichEdit) = richedit{你的richEdit的名} then
begin
//加入选中第一行的代码。
end;
 

Similar threads

后退
顶部