我正在编写一个小程序来模拟我的 Xbox 360 控制器的鼠标。我已经成功实现了光标的移动,但是点击有困难。
这是我的代码片段:
while (msg.message != WM_QUIT) {
if (PeekMessage(&msg, nullptr, 0, 0, PM_REMOVE)) {
TranslateMessage(&msg);
DispatchMessage(&msg);
} else {
...
if (state.Gamepad.wButtons & XINPUT_GAMEPAD_A) {
PostMessage(HWND_BROADCAST, WM_LBUTTONDOWN, 0, MAKEWORD(new_x, new_y));
}
...
}
}
我不是 100% 确定这是正确的方法,但我试图在按下A按钮WM_LBUTTONDOWN
时将消息发送到所有顶级窗口。但是当我将鼠标放在一个按钮上并按下A时,该按钮会闪烁,就好像它被点击了一样,但什么也没有发生。
如果有人能指出我正确的方向或提供另一种方法来做到这一点,我将不胜感激!