JoyGetPosEx: Unterschied zwischen den Versionen

Aus API-Wiki
Wechseln zu: Navigation, Suche
K (Parameter)
 
(7 dazwischenliegende Versionen von 5 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
 
__NOTOC__
 
__NOTOC__
  
Diese Funktion fragt die Position eines Joysticks ab und gibt sie 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.
  
<code vb>
+
<syntaxhighlight lang="vb">Declare Function joyGetPosEx Lib "winmm.dll" ( _
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>
</code>
 
  
===Parameter===
+
==Parameter==
  
 
''uJoyID [Übergabe]''
 
''uJoyID [Übergabe]''
  
 
: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:
:<code vb>
+
<syntaxhighlight lang="vb">Const JOYSTICKID1 = 0
Const JOYSTICKID1 = 0
+
Const JOYSTICKID2 = 1</syntaxhighlight>
Const JOYSTICKID2 = 1</code>
 
 
:Auf neueren Systemen sind Werte zwischen  
 
:Auf neueren Systemen sind Werte zwischen  
<code vb> Const JOYSTICKID1 = 0</code>  
+
<syntaxhighlight lang="vb">Const JOYSTICKID1 = 0</syntaxhighlight>  
 
:und  
 
:und  
<code vb> Const JOYSTICKID16 = 15</code>
+
<syntaxhighlight lang="vb">Const JOYSTICKID16 = 15</syntaxhighlight>
 
:möglich.
 
:möglich.
 
  
 
''pji [Übergabe]''
 
''pji [Übergabe]''
Zeile 28: Zeile 24:
 
:Ein Zeiger auf eine [[JOYINFOEX]]-Struktur, die die ermittelten Werte erhält.
 
:Ein Zeiger auf eine [[JOYINFOEX]]-Struktur, die die ermittelten Werte erhält.
  
===Rückgabewert(e)===
+
==Rückgabewert(e)==
  
 
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:
  
<code vb>
+
<syntaxhighlight lang="vb">Const MMSYSERR_BASE = 0
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)
+
Const MMSYSERR_INVALPARAM = (MMSYSERR_BASE + 11)
Const MMSYSERR_INVALPARAM = (MMSYSERR_BASE + 11)
+
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)</syntaxhighlight>
Const JOYERR_UNPLUGGED = (JOYERR_BASE + 7)</code>
 
  
===Sonstige Hinweise===
+
==Sonstige Hinweise==
  
 
Die Werte dwFlags und dwSize der [[JOYINFOEX]]-Struktur müssen zugewiesen werden, ansonsten wird joyGetPosEx versagen.<br />
 
Die Werte dwFlags und dwSize der [[JOYINFOEX]]-Struktur müssen zugewiesen werden, ansonsten wird joyGetPosEx versagen.<br />
 
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.
 
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===
+
==Beispiel==
 +
 
 +
<syntaxhighlight lang="vb">Dim JIE As JOYINFOEX
 +
 
 +
JIE.dwSize = Len(JIE)
 +
JIE.dwFlags = [[JOYINFOEX|JOY_RETURNALL]]
  
<code vb>
+
ret = joyGetPOS(JOYSTICKID1, JIE)
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
If ret <> JOYERR_NOERROR Then
+
End If</syntaxhighlight>
    ' Fehler beim Aufruf
 
End If
 
</code>
 
  
 
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.
  
===Verwandte Funktionen===
+
==Verwandte Funktionen==
  
 
* [[joyConfigChanged]] - Weist den Joystick-Treiber an, geänderte Informationen zu aktualisieren<br />
 
* [[joyConfigChanged]] - Weist den Joystick-Treiber an, geänderte Informationen zu aktualisieren<br />
Zeile 75: Zeile 68:
 
* [[joySetThreshold]] - Setzt die Bewegungsschelle eines Joysticks, ab der Nachrichten an Fenster geschickt werden, die ein Capture auf den Joystick haben
 
* [[joySetThreshold]] - Setzt die Bewegungsschelle eines Joysticks, ab der Nachrichten an Fenster geschickt werden, die ein Capture auf den Joystick haben
  
===Verweise===
+
==Verweise==
  
 
[http://msdn.microsoft.com/en-us/library/ms709354(VS.85).aspx MSDN Library - joyGetPosEx]
 
[http://msdn.microsoft.com/en-us/library/ms709354(VS.85).aspx MSDN Library - joyGetPosEx]
  
 
+
==Quellen==
===Quellen===
 
  
 
[http://msdn.microsoft.com/en-us/library/ms709354(VS.85).aspx MSDN Library - joyGetPosEx]<br />
 
[http://msdn.microsoft.com/en-us/library/ms709354(VS.85).aspx MSDN Library - joyGetPosEx]<br />
Zeile 86: 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