C ++ Win32 установить положение курсора - PullRequest
4 голосов
/ 05 сентября 2010

Я знаю, какую функцию использовать, но не могу заставить ее работать правильно.Я использовал SetCursorPos(), единственная проблема в том, что он устанавливает курсор не на координаты окна, а на координаты экрана.Я также попробовал ScreenToClient(), но это не сработало.
Вот мой код:

pt.x=113;
pt.y=280;
ScreenToClient(hWnd, &pt);
SetCursorPos(pt.x, pt.y);

Есть идеи?Я использую win32.Я надеюсь, что я дал достаточно информации.

1 Ответ

11 голосов
/ 05 сентября 2010

Вы подходите немного назад. Функция SetCursorPos работает на экране, и вы хотите установить курсор на основе координат окна / клиента. Для этого вам необходимо отобразить координаты от клиента к экрану. Функция ScreenToClient делает обратное. То, что вы ищете, это ClientToScreen

Например:

ClientToScreen(hWnd, &pt);
SetCursorPos(pt.x,pt.y);

Документация

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...