Estrutura JOYINFOEX (joystickapi.h)
A estrutura JOYINFOEX contém informações estendidas sobre a posição do joystick, a posição do ponto de exibição e o estado do botão.
Sintaxe
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;
Membros
dwSize
Tamanho, em bytes, dessa estrutura.
dwFlags
Sinalizadores que indicam as informações válidas retornadas nesta estrutura. Os membros que não contêm informações válidas são definidos como zero. Os seguintes sinalizadores são definidos:
Sinalizador | Descrição |
---|---|
JOY_RETURNALL | Equivalente a definir todos os bits JOY_RETURN, exceto JOY_RETURNRAWDATA. |
JOY_RETURNBUTTONS | O membro dwButtons contém informações válidas sobre o estado de cada botão de joystick. |
JOY_RETURNCENTERED | Centraliza a posição neutra do joystick para o valor médio de cada eixo de movimento. |
JOY_RETURNPOV | O membro dwPOV contém informações válidas sobre o controle de ponto de exibição, expresso em unidades discretas. |
JOY_RETURNPOVCTS | O membro dwPOV contém informações válidas sobre o controle de ponto de exibição expresso em unidades contínuas de centésimo grau. |
JOY_RETURNR | O membro dwRpos contém dados válidos do pedal do leme. Essas informações representam outro (quarto) eixo. |
JOY_RETURNRAWDATA | Os dados armazenados nessa estrutura são leituras de joystick não realçadas. |
JOY_RETURNU | O membro dwUpos contém dados válidos para um quinto eixo do joystick, se esse eixo estiver disponível ou retornará zero caso contrário. |
JOY_RETURNV | O membro dwVpos contém dados válidos para um sexto eixo do joystick, se esse eixo estiver disponível ou retornará zero de outra forma. |
JOY_RETURNX | O membro dwXpos contém dados válidos para a coordenada x do joystick. |
JOY_RETURNY | O membro dwYpos contém dados válidos para a coordenada y do joystick. |
JOY_RETURNZ | O membro dwZpos contém dados válidos para a coordenada z do joystick. |
Os sinalizadores a seguir fornecem dados para calibrar um joystick e são destinados a aplicativos de calibragem personalizados.
Sinalizador | Descrição |
---|---|
JOY_CAL_READ3 | Leia as coordenadas x, y e z e armazene os valores brutos em dwXpos, dwYpos e dwZpos. |
JOY_CAL_READ4 | Leia as informações do leme e as coordenadas x, y e z e armazene os valores brutos em dwXpos, dwYpos, dwZpos e dwRpos. |
JOY_CAL_READ5 | Leia as informações do leme e as coordenadas x, y, z e you e armazene os valores brutos em dwXpos, dwYpos, dwZpos, dwRpos e dwUpos. |
JOY_CAL_READ6 | Leia os dados brutos do eixo v se um mini driver joystick estiver presente que fornecerá os dados. Retorna zero caso contrário. |
JOY_CAL_READALWAYS | Leia a porta do joystick mesmo que o driver não detecte um dispositivo. |
JOY_CAL_READRONLY | Leia as informações do leme se houver um mini driver joystick que fornecerá os dados e armazenará o valor bruto em dwRpos. Caso contrário, retornará zero. |
JOY_CAL_READXONLY | Leia a coordenada x e armazene o valor bruto (não recalculado) em dwXpos. |
JOY_CAL_READXYONLY | Lê as coordenadas x e y e coloca os valores brutos em dwXpos e dwYpos. |
JOY_CAL_READYONLY | Lê a coordenada y e armazena o valor bruto em dwYpos. |
JOY_CAL_READZONLY | Leia a coordenada z e armazene o valor bruto em dwZpos. |
JOY_CAL_READUONLY | Leia a coordenada u se um mini driver joystick estiver presente que fornecerá os dados e armazenará o valor bruto em dwUpos. Caso contrário, retornará zero. |
JOY_CAL_READVONLY | Leia a coordenada v se um mini driver joystick estiver presente que fornecerá os dados e armazenará o valor bruto em dwVpos. Caso contrário, retornará zero. |
dwXpos
Coordenada X atual.
dwYpos
Coordenada Y atual.
dwZpos
Coordenada Z atual.
dwRpos
Posição atual do leme ou do quarto eixo joystick.
dwUpos
Posição atual do quinto eixo.
dwVpos
Posição atual do sexto eixo.
dwButtons
Estado atual dos botões de joystick 32. O valor desse membro pode ser definido como qualquer combinação de JOY_BUTTON n sinalizadores, em que n é um valor no intervalo de 1 a 32 correspondente ao botão que é pressionado.
dwButtonNumber
Número do botão atual que é pressionado.
dwPOV
Posição atual do controle de ponto de exibição. Os valores desse membro estão no intervalo de 0 a 35.900. Esses valores representam o ângulo, em graus, de cada exibição multiplicada por 100.
dwReserved1
Reservado; não use.
dwReserved2
Reservado; não use.
Comentários
O valor do membro dwSize também é usado para identificar o número de versão da estrutura quando ela é passada para a função joyGetPosEx .
A maioria dos dispositivos com um controle de ponto de exibição tem apenas cinco posições. Quando o sinalizador JOY_RETURNPOV é definido, essas posições são relatadas usando as seguintes constantes:
Sinalizador de ponto de exibição | Descrição |
---|---|
JOY_POVBACKWARD | O chapéu de ponto de vista é pressionado para trás. O valor 18.000 representa uma orientação de 180,00 graus (para trás). |
JOY_POVCENTERED | O chapéu de ponto de vista está na posição neutra. O valor -1 significa que o chapéu de ponto de vista não tem ângulo para relatar. |
JOY_POVFORWARD | O chapéu de ponto de vista é pressionado para a frente. O valor 0 representa uma orientação de 0,00 graus (logo à frente). |
JOY_POVLEFT | O chapéu de ponto de vista está sendo pressionado à esquerda. O valor 27.000 representa uma orientação de 270,00 graus (90,00 graus à esquerda). |
JOY_POVRIGHT | O chapéu de ponto de vista é pressionado à direita. O valor 9.000 representa uma orientação de 90,00 graus (à direita). |
Atualmente, o driver de joystick padrão dá suporte a essas cinco direções discretas. Se um aplicativo puder aceitar apenas os valores de ponto de exibição definidos, ele deverá usar o sinalizador JOY_RETURNPOV. Se um aplicativo puder aceitar outras leituras de grau, ele deverá usar o sinalizador JOY_RETURNPOVCTS para obter dados contínuos se estiver disponível. O sinalizador JOY_RETURNPOVCTS também dá suporte às constantes JOY_POV usadas com o sinalizador JOY_RETURNPOV.
Requisitos
Cliente mínimo com suporte | Windows 2000 Professional [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows 2000 Server [somente aplicativos da área de trabalho] |
Cabeçalho | joystickapi.h (inclua Windows.h) |
Confira também
Joysticks
Estruturas joystick multimídia