mrjbom
@mrjbom

SetCoursorPos не работает в полноэкранных приложениях?

Программа работает с методами SetCursorPos() и GetCursorPos(), всё хорошо, однако они не работают в приложениях, которые захватывают курсор, например в играх.
Приведу пример на игре - с помощью SetCursorPos() можно работать с приложением если курсор не скрыт(переключать пункты в меню и прочее), а как только игра скрывает курсор - функции перестают работать, что делать?
  • Вопрос задан
  • 123 просмотра
Пригласить эксперта
Ответы на вопрос 3
Например, в случае DirectX там используется свой курсор:

SetCursor( NULL );//убираем курсор Windows
m_pd3dDevice->ShowCursor( TRUE );//IDirect3DDevice9::ShowCursor
Ответ написан
Комментировать
Ezhyg
@Ezhyg
Так там и правда нет курсора, как можно работать с тем, чего нет?!

Ладно, ладно - работай с мышью (и клавиатурой, если надо), как делают другие "программы для игр".
Ответ написан
@Warlodya
Как вариант
spoiler
INPUT  Input = { 0 };
		Input.type = INPUT_MOUSE;
		Input.mi.dwFlags = MOUSEEVENTF_MOVE | MOUSEEVENTF_ABSOLUTE;
		Input.mi.dx = fx;
		Input.mi.dy = fy;
		SendInput(1, &Input, sizeof(INPUT));
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы