c ++ - Como eu detectaria se o botão do meio está pressionado?

Dec 03 2020

É possível detectar se o botão do meio está sendo pressionado em c ++? Eu vi essa pergunta, mas não mencionou nada sobre ouvir botões, exceto o botão esquerdo do mouse.

eu quero

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

mas em vez de disparar quando o botão esquerdo é pressionado, disparar quando o botão do meio é pressionado.

Respostas

Yunnosch Dec 29 2020 at 09:51

Você está perguntando especificamente como fazer algo para o botão do meio do mouse que você só encontrou explicado para o botão esquerdo do mouse. (Pelo menos você enfatiza isso muito, embora eu não veja como o código mostrado é aplicável ...)

Então, ao pesquisar MOUSEEVENTF_LEFTDOWNe VK_LBUTTONdescobri que, por exemplo, aqui, eles estão listados entre irmãos muito promissores, especialmente MOUSEEVENTF_MIDDLEDOWNe VK_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

Já que você só pergunta sobre a diferença entre a esquerda e o meio, você deve estar configurado com esta informação.