gpt4 book ai didi

c++ - 使用 Xbox 360 Controller 的鼠标模拟

转载 作者:塔克拉玛干 更新时间:2023-11-03 06:57:17 27 4
gpt4 key购买 nike

我正在编写一个小程序来用我的 Xbox 360 Controller 模拟鼠标。我已经成功实现了光标的移动,但在点击时遇到了困难。

这是我的代码片段:

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 时,该按钮会闪烁,就好像它被单击了一样,但随后什么也没有发生。

如果有人能为我指明正确的方向或提供替代方法,我将不胜感激!

最佳答案

我认为,您宁愿使用 mouse_event 而不是 PostMessage API 甚至 SendInput .它允许您在更抽象的层面上综合鼠标事件。

关于c++ - 使用 Xbox 360 Controller 的鼠标模拟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7963787/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com