Как получить позицию курсора в форме?

Мне нужно получить позицию курсора в форме, как мне это сделать?


person Little Helper    schedule 20.04.2011    source источник


Ответы (1)


Передайте Mouse.CursorPos TForm.ScreenToClient().

Mouse.CursorPos возвращается в системе координат экрана. TForm.ScreenToClient() преобразует точки в клиентскую систему координат формы.

На самом деле все потомки TControl предлагают метод ScreenToClient() и обратный ему метод ClientToScreen() для преобразования между системами координат.

person David Heffernan    schedule 20.04.2011
comment
Вы можете сократить это с помощью метода CalcCursorPos, который становится < i>незащищенный в блоке, где определен потомок TForm. Этот метод существует даже в Delphi 7... - person TLama; 06.05.2014