Foros - Stratos

Programadores => General Programadores => Mensaje iniciado por: Alexpi en 28 de Junio de 2006, 01:28:34 PM

Título: mouse scroll
Publicado por: Alexpi en 28 de Junio de 2006, 01:28:34 PM
alguien sabe como saber cuadno se usa la reda del raton?

Para saber cuando pulsan los botones del raton uso GetKeyState() con MK_BUTTON, LK_BUTTON y RK_BUTTON pero para la ruedecita no encuentro nada :S.

PD: Uso VC++ 6
Título: mouse scroll
Publicado por: Astat en 28 de Junio de 2006, 01:41:37 PM
Captura el mensaje WM_MOUSEWHEEL (0x020A) en el bucle de mensajes de windows, por ejemplo asi:



   case 0x020A: //WM_MOUSEWHEEL:
   {
     int nDelta = (short)HIWORD(wParam) / 120 /*WHEEL_DELTA*/;
     unsigned lines;
     SystemParametersInfo(0x0068/*SPI_GETWHEELSCROLLLINES*/, 0, &lines, 0);
     m_ScrollBar.Scroll(-nDelta * lines);
     return true;
   }
Título: mouse scroll
Publicado por: Zaelsius en 28 de Junio de 2006, 01:44:16 PM
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winui/winui/windowsuserinterface/userinput/mouseinput/mouseinputreference/mouseinputmessages/wm_mousewheel.asp

No sé si en las cabeceras del VC++ 6 ya estaba definido el mensaje WM_MOUSEWHEEL, pero siempre puedes usar esto:

#define WM_MOUSEWHEEL                   0x020A

Edit: se adelantó Astat ;)
Título: mouse scroll
Publicado por: Alexpi en 28 de Junio de 2006, 03:05:45 PM
asias ^^

por cierto, como se si estan dandole hacia "arriba" o hacia "abajo" a la rueda?
Título: mouse scroll
Publicado por: Astat en 28 de Junio de 2006, 03:49:47 PM
Por el signo
Título: mouse scroll
Publicado por: Alexpi en 28 de Junio de 2006, 04:42:52 PM
y no habria forma de usarlo con el GetKeyState() ?
Título: mouse scroll
Publicado por: Astat en 28 de Junio de 2006, 06:04:35 PM
GetKeyState es solo util para el teclado, asi que creo que no.
Título: mouse scroll
Publicado por: ethernet en 28 de Junio de 2006, 09:13:35 PM
Juraría que hay ciertos defines que permiten conocer el estado de las teclas del ratón, incluida la ruleta. Aunque ya no sé si lo confundo con SDL XD
Título: mouse scroll
Publicado por: zupervaca en 28 de Junio de 2006, 09:13:53 PM
Ya que estamos ¿alguien sabe capturar la rueda del raton en linux con x11?
Título: mouse scroll
Publicado por: senior wapo en 28 de Junio de 2006, 09:44:20 PM
Cita de: "zupervaca"Ya que estamos ¿alguien sabe capturar la rueda del raton en linux con x11?

Con el evento ButtonPress, los botones 4 y 5 se corresponden a un avance de un paso de la rueda y a un retroceso respectivamente, al menos en mi máquina. 1,2 y 3 son los botones izq derecho y central de siempre.
Título: mouse scroll
Publicado por: zupervaca en 28 de Junio de 2006, 09:49:44 PM
Los tres primeros botones lo sabia, pero lo que no tenia ni idea era lo de los otros dos botones, muchas gracias, lo tendre que probar cuando tenga tiempo.