2016-02-09 4 views
0

Как я могу получить приложение x y относительно экрана клиента?C++ win32 Относительное положение на рабочем столе

Я пробовал, но все не понятны, поэтому кто-нибудь может помочь.

RECT pta; 
GetWindowRect(hWnd,&pta); 
POINT Rpt = { pta.left, pta.top }; 
ScreenToClient(hWnd, &Rpt); 

Но это не сработает.

+0

Что такое экран клиента? – immibis

+0

@immibis Я имею в виду dedktop – Maloser

+0

Тогда просто не вызывайте ScreenToClient? Координаты окна обычно относятся к рабочему столу. – immibis

ответ

1

Я хочу, чтобы установить свою позицию курсора в середине в окне моего приложения

Если я понимаю правильно, вы хотите вызвать SetCursorPos() окна вызова API центрировать курсор мыши к окно. Эта функция принимает координаты экрана.

GetWindowRect() возвращает верхние и левые координаты окна уже в координатах экрана, поэтому преобразование не требуется.

Чтобы добраться до координат центра вашего окна, вам нужно просто добавить половину ширины и высоты окна в координаты верхней левой точки. Затем вы можете вызвать SetCursorPos().

Смежные вопросы