Compartir a través de


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

joyGetPosEx