Estructura JOYINFOEX (joystickapi.h)
La estructura JOYINFOEX contiene información extendida sobre la posición del joystick, la posición de punto de vista y el estado del botón.
Sintaxis
typedef struct joyinfoex_tag {
DWORD dwSize;
DWORD dwFlags;
DWORD dwXpos;
DWORD dwYpos;
DWORD dwZpos;
DWORD dwRpos;
DWORD dwUpos;
DWORD dwVpos;
DWORD dwButtons;
DWORD dwButtonNumber;
DWORD dwPOV;
DWORD dwReserved1;
DWORD dwReserved2;
} JOYINFOEX, *PJOYINFOEX, *NPJOYINFOEX, *LPJOYINFOEX;
Members
dwSize
Tamaño, en bytes, de esta estructura.
dwFlags
Marcas que indican la información válida devuelta en esta estructura. Los miembros que no contienen información válida se establecen en cero. Se definen las marcas siguientes:
Marca | Descripción |
---|---|
JOY_RETURNALL | Equivalente a establecer todos los bits de JOY_RETURN excepto JOY_RETURNRAWDATA. |
JOY_RETURNBUTTONS | El miembro dwButtons contiene información válida sobre el estado de cada botón de joystick. |
JOY_RETURNCENTERED | Centra la posición neutra del joystick en el valor central de cada eje de movimiento. |
JOY_RETURNPOV | El miembro dwPOV contiene información válida sobre el control de punto de vista, expresado en unidades discretas. |
JOY_RETURNPOVCTS | El miembro dwPOV contiene información válida sobre el control de punto de vista expresado en unidades continuas de cien grados. |
JOY_RETURNR | El miembro dwRpos contiene datos válidos del pedal de rudder. Esta información representa otro eje (cuarto). |
JOY_RETURNRAWDATA | Los datos almacenados en esta estructura son lecturas de joystick no almacenadas en caché. |
JOY_RETURNU | El miembro dwUpos contiene datos válidos para un quinto eje del joystick, si este eje está disponible o devuelve cero de lo contrario. |
JOY_RETURNV | El miembro dwVpos contiene datos válidos para un sexto eje del joystick, si este eje está disponible o devuelve cero de lo contrario. |
JOY_RETURNX | El miembro dwXpos contiene datos válidos para la coordenada x del joystick. |
JOY_RETURNY | El miembro dwYpos contiene datos válidos para la coordenada y del joystick. |
JOY_RETURNZ | El miembro dwZpos contiene datos válidos para la coordenada z del joystick. |
Las marcas siguientes proporcionan datos para calibrar un joystick y están diseñados para aplicaciones de calibración personalizadas.
Marca | Descripción |
---|---|
JOY_CAL_READ3 | Lea las coordenadas x, y-y-z y almacene los valores sin procesar en dwXpos, dwYpos y dwZpos. |
JOY_CAL_READ4 | Lea la información de rudder y las coordenadas x, y-y-z y almacene los valores sin procesar en dwXpos, dwYpos, dwZpos y dwRpos. |
JOY_CAL_READ5 | Lea la información de rudder y las coordenadas x,y-, z-, y you-, y almacene los valores sin procesar en dwXpos, dwYpos, dwZpos, dwRpos y dwUpos. |
JOY_CAL_READ6 | Lea los datos sin procesar del eje v si hay un mini controlador de joystick que proporcionará los datos. Devuelve cero de lo contrario. |
JOY_CAL_READALWAYS | Lee el puerto del joystick incluso si el controlador no detecta un dispositivo. |
JOY_CAL_READRONLY | Lea la información del rudder si hay un mini-controlador de joystick presente que proporcionará los datos y almacenará el valor sin procesar en dwRpos. Devuelve cero de lo contrario. |
JOY_CAL_READXONLY | Lea la coordenada x y almacene el valor sin procesar (sin almacenar) en dwXpos. |
JOY_CAL_READXYONLY | Lee las coordenadas x e y y coloca los valores sin procesar en dwXpos y dwYpos. |
JOY_CAL_READYONLY | Lee la coordenada y y almacena el valor sin procesar en dwYpos. |
JOY_CAL_READZONLY | Lea la coordenada z y almacene el valor sin procesar en dwZpos. |
JOY_CAL_READUONLY | Lea la coordenada u si hay un mini-controlador de joystick que proporcionará los datos y almacenará el valor sin procesar en dwUpos. Devuelve cero de lo contrario. |
JOY_CAL_READVONLY | Lea la coordenada v si hay un minicontrolador de joystick que proporcionará los datos y almacenará el valor sin procesar en dwVpos. Devuelve cero de lo contrario. |
dwXpos
Coordenada X actual.
dwYpos
Coordenada Y actual.
dwZpos
Coordenada Z actual.
dwRpos
Posición actual del timón o del cuarto eje de joystick.
dwUpos
Posición actual del quinto eje.
dwVpos
Posición actual del sexto eje.
dwButtons
Estado actual de los 32 botones de joystick. El valor de este miembro se puede establecer en cualquier combinación de JOY_BUTTON n marcas, donde n es un valor del intervalo de 1 a 32 correspondiente al botón que se presiona.
dwButtonNumber
Número de botón actual que se presiona.
dwPOV
Posición actual del control de punto de vista. Los valores de este miembro están comprendidos entre 0 y 35 900. Estos valores representan el ángulo, en grados, de cada vista multiplicada por 100.
dwReserved1
Reservado; no usar.
dwReserved2
Reservado; no usar.
Comentarios
El valor del miembro dwSize también se usa para identificar el número de versión de la estructura cuando se pasa a la función joyGetPosEx .
La mayoría de los dispositivos con un control de punto de vista tienen solo cinco posiciones. Cuando se establece la marca de JOY_RETURNPOV, estas posiciones se notifican mediante las siguientes constantes:
Marca de punto de vista | Descripción |
---|---|
JOY_POVBACKWARD | El sombrero de punto de vista se presiona hacia atrás. El valor 18 000 representa una orientación de 180,00 grados (hacia atrás). |
JOY_POVCENTERED | El sombrero de punto de vista está en la posición neutra. El valor -1 significa que el sombrero de punto de vista no tiene ningún ángulo para informar. |
JOY_POVFORWARD | El sombrero de punto de vista se presiona hacia delante. El valor 0 representa una orientación de 0,00 grados (directamente). |
JOY_POVLEFT | El sombrero de punto de vista se está presionando a la izquierda. El valor 27 000 representa una orientación de 270,00 grados (90,00 grados a la izquierda). |
JOY_POVRIGHT | El sombrero de punto de vista se presiona a la derecha. El valor 9000 representa una orientación de 90,00 grados (a la derecha). |
El controlador de joystick predeterminado actualmente admite estas cinco direcciones discretas. Si una aplicación solo puede aceptar los valores de punto de vista definidos, debe usar la marca JOY_RETURNPOV. Si una aplicación puede aceptar otras lecturas de grados, debe usar la marca JOY_RETURNPOVCTS para obtener datos continuos si está disponible. La marca JOY_RETURNPOVCTS también admite las constantes de JOY_POV usadas con la marca JOY_RETURNPOV.
Requisitos
Cliente mínimo compatible | Windows 2000 Professional [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows 2000 Server [solo aplicaciones de escritorio] |
Encabezado | joystickapi.h (incluye Windows.h) |
Consulte también
Joysticks
Estructuras multimedia de joystick