JoyGetPosEx: Unterschied zwischen den Versionen

Aus API-Wiki
Wechseln zu: Navigation, Suche
K (Parameter)
 
(4 dazwischenliegende Versionen von 4 Benutzern werden nicht angezeigt)
Zeile 3: Zeile 3:
 
Diese Funktion fragt die Position eines Joysticks ab und gibt diese zurück. Es können außerdem weitere Werte abgefragt werden.
 
Diese Funktion fragt die Position eines Joysticks ab und gibt diese zurück. Es können außerdem weitere Werte abgefragt werden.
  
<vb>Declare Function joyGetPosEx Lib "winmm.dll" ( _
+
<syntaxhighlight lang="vb">Declare Function joyGetPosEx Lib "winmm.dll" ( _
 
                               ByVal uJoyID As Long, _
 
                               ByVal uJoyID As Long, _
                               ByRef pji As JOYINFOEX) As Long
+
                               ByRef pji As JOYINFOEX) As Long</syntaxhighlight>
</vb>
 
  
 
==Parameter==
 
==Parameter==
Zeile 13: Zeile 12:
  
 
:Eine Nummer, die den abzufragenden Joystick bestimmt. Unter Windows NT 4.0 sind folgenden Werte möglich:
 
:Eine Nummer, die den abzufragenden Joystick bestimmt. Unter Windows NT 4.0 sind folgenden Werte möglich:
<vb>Const JOYSTICKID1 = 0
+
<syntaxhighlight lang="vb">Const JOYSTICKID1 = 0
Const JOYSTICKID2 = 1</vb>
+
Const JOYSTICKID2 = 1</syntaxhighlight>
 
:Auf neueren Systemen sind Werte zwischen  
 
:Auf neueren Systemen sind Werte zwischen  
<vb>Const JOYSTICKID1 = 0</vb>  
+
<syntaxhighlight lang="vb">Const JOYSTICKID1 = 0</syntaxhighlight>  
 
:und  
 
:und  
<vb>Const JOYSTICKID16 = 15</vb>
+
<syntaxhighlight lang="vb">Const JOYSTICKID16 = 15</syntaxhighlight>
 
:möglich.
 
:möglich.
  
Zeile 29: Zeile 28:
 
Die joyGetPosEx-Funktion gibt JOYERR_NOERROR = 0 zurück, wenn der Aufruf erfolgreich war. Mögliche andere Rückgabewerte sind:
 
Die joyGetPosEx-Funktion gibt JOYERR_NOERROR = 0 zurück, wenn der Aufruf erfolgreich war. Mögliche andere Rückgabewerte sind:
  
<vb>Const MMSYSERR_BASE = 0
+
<syntaxhighlight lang="vb">Const MMSYSERR_BASE = 0
 
Const MMSYSERR_BADDEVICEID = (MMSYSERR_BASE + 2)
 
Const MMSYSERR_BADDEVICEID = (MMSYSERR_BASE + 2)
 
Const MMSYSERR_NODRIVER = (MMSYSERR_BASE + 6)
 
Const MMSYSERR_NODRIVER = (MMSYSERR_BASE + 6)
Zeile 35: Zeile 34:
 
Const JOYERR_BASE = 160
 
Const JOYERR_BASE = 160
 
Const JOYERR_PARMS = (JOYERR_BASE + 5)
 
Const JOYERR_PARMS = (JOYERR_BASE + 5)
Const JOYERR_UNPLUGGED = (JOYERR_BASE + 7)</vb>
+
Const JOYERR_UNPLUGGED = (JOYERR_BASE + 7)</syntaxhighlight>
  
 
==Sonstige Hinweise==
 
==Sonstige Hinweise==
Zeile 44: Zeile 43:
 
==Beispiel==
 
==Beispiel==
  
<vb>Dim JIE As JOYINFOEX
+
<syntaxhighlight lang="vb">Dim JIE As JOYINFOEX
 
JIE.dwSize = Len(JIE)
 
JIE.dwFlags = [[JOYINFOEX|JOY_RETURNALL]]
 
  
ret = joyGetPOS(JOYSTICKID1, JIE)
+
JIE.dwSize = Len(JIE)
+
JIE.dwFlags = [[JOYINFOEX|JOY_RETURNALL]]
If ret <> JOYERR_NOERROR Then
+
 
    ' Fehler beim Aufruf
+
ret = joyGetPOS(JOYSTICKID1, JIE)
End If</vb>
+
 
 +
If ret <> JOYERR_NOERROR Then
 +
  ' Fehler beim Aufruf
 +
End If</syntaxhighlight>
  
 
Der Wert für JOY_RETURNALL ist bei [[JOYINFOEX]] unter dwFlags zu finden.
 
Der Wert für JOY_RETURNALL ist bei [[JOYINFOEX]] unter dwFlags zu finden.
Zeile 79: Zeile 78:
  
 
[[Kategorie:Eingabegeräte]]
 
[[Kategorie:Eingabegeräte]]
 +
[[Kategorie:Winmm]]
 +
[[Kategorie:Funktionen]]
 +
[[Kategorie:Joystick]]

Aktuelle Version vom 5. November 2016, 23:47 Uhr


Diese Funktion fragt die Position eines Joysticks ab und gibt diese zurück. Es können außerdem weitere Werte abgefragt werden.

Declare Function joyGetPosEx Lib "winmm.dll" ( _
                              ByVal uJoyID As Long, _
                              ByRef pji As JOYINFOEX) As Long

Parameter

uJoyID [Übergabe]

Eine Nummer, die den abzufragenden Joystick bestimmt. Unter Windows NT 4.0 sind folgenden Werte möglich:
Const JOYSTICKID1 = 0
Const JOYSTICKID2 = 1
Auf neueren Systemen sind Werte zwischen
Const JOYSTICKID1 = 0
und
Const JOYSTICKID16 = 15
möglich.

pji [Übergabe]

Ein Zeiger auf eine JOYINFOEX-Struktur, die die ermittelten Werte erhält.

Rückgabewert(e)

Die joyGetPosEx-Funktion gibt JOYERR_NOERROR = 0 zurück, wenn der Aufruf erfolgreich war. Mögliche andere Rückgabewerte sind:

Const MMSYSERR_BASE = 0
Const MMSYSERR_BADDEVICEID = (MMSYSERR_BASE + 2)
Const MMSYSERR_NODRIVER = (MMSYSERR_BASE + 6)
Const MMSYSERR_INVALPARAM = (MMSYSERR_BASE + 11)
Const JOYERR_BASE = 160
Const JOYERR_PARMS = (JOYERR_BASE + 5)
Const JOYERR_UNPLUGGED = (JOYERR_BASE + 7)

Sonstige Hinweise

Die Werte dwFlags und dwSize der JOYINFOEX-Struktur müssen zugewiesen werden, ansonsten wird joyGetPosEx versagen.
Die joyGetPosEx-Funktion lohnt nur für Joysticks mit mehr als drei Achsen und/oder mehr als vier Knöpfen. Wenn Informationen über 3 Achsen und 4 Knöpfe hinreichend sind, empfiehlt sich die joyGetPos-Funktion.

Beispiel

Dim JIE As JOYINFOEX

JIE.dwSize = Len(JIE)
JIE.dwFlags = [[JOYINFOEX|JOY_RETURNALL]]

ret = joyGetPOS(JOYSTICKID1, JIE)

If ret <> JOYERR_NOERROR Then
   ' Fehler beim Aufruf
End If

Der Wert für JOY_RETURNALL ist bei JOYINFOEX unter dwFlags zu finden.

Verwandte Funktionen

  • joyConfigChanged - Weist den Joystick-Treiber an, geänderte Informationen zu aktualisieren
  • joyGetDevCaps - Fragt Informationen über den Joystick ab
  • joyGetNumDevs - Gibt die Anzahl unterstützter Joysticks zurück
  • joyGetPos - Fragt die Positionsdaten eines Joysticks ab
  • joyGetPosEx - Fragt die Positionsdaten eines Joysticks ab
  • joyGetThreshold - Gibt die Bewegunsschwelle zurück, ab der Nachrichten an Fenster geschickt werden, die ein Capture auf den Joystick haben
  • joyReleaseCapture - Gibt ein Capture auf einen Joystick wieder frei
  • joySetCapture - Setzt ein Capture auf einen Joystick, sodass Informationen per Fenster-Nachricht empfangen werden
  • joySetThreshold - Setzt die Bewegungsschelle eines Joysticks, ab der Nachrichten an Fenster geschickt werden, die ein Capture auf den Joystick haben

Verweise

MSDN Library - joyGetPosEx

Quellen

MSDN Library - joyGetPosEx
freepascal.org - Reference for unit 'mmsystem': Constants