c++ - 我如何检测中间按钮是否被按下?

c++ - How would I detect if the middle button is held down?

是否可以在c++中检测是否按下中间按钮?我看到了 this 问题,但它没有提到任何关于监听按钮的内容,除了鼠标左键。

我要

int main(){
    while (1){
        while((GetKeyState(VK_LBUTTON) & 0x100) != 0){
            mouse_event(MOUSEEVENTF_LEFTDOWN | MOUSEEVENTF_LEFTUP, 0, 0, 0, 0);
            Sleep(10);
        }
    }
    return 0;
}

但不是按下左键时触发,而是按下中键时触发。

您专门询问如何为鼠标中键做某事,而您只找到了针对鼠标左键的解释。 (至少你非常强调这一点,虽然我没有看到显示的代码如何适用......)

所以在搜索 MOUSEEVENTF_LEFTDOWNVK_LBUTTON 时,我发现例如在这里,他们被列为非常有前途的兄弟姐妹,尤其是 MOUSEEVENTF_MIDDLEDOWNVK_MBUTTON.

https://docs.microsoft.com/en-us/windows/win32/api/winuser/nf-winuser-mouse_event
https://docs.microsoft.com/en-us/windows/win32/inputdev/virtual-key-codes

既然你只问了left和middle的区别,你应该设置了这个信息。