JoyGetPosEx: Unterschied zwischen den Versionen

Aus API-Wiki
Wechseln zu: Navigation, Suche
K (Parameter)
K (Fehlerhafte Augabe behoben, an Formatvorlage angepasst)
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>
+
<pre>
 
  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
</code>
+
</pre>
  
===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>
+
<pre>
 
  Const JOYSTICKID1 = 0
 
  Const JOYSTICKID1 = 0
  Const JOYSTICKID2 = 1</code>
+
  Const JOYSTICKID2 = 1</pre>
 
:Auf neueren Systemen sind Werte zwischen  
 
:Auf neueren Systemen sind Werte zwischen  
  <code vb> Const JOYSTICKID1 = 0</code>  
+
  <pre> Const JOYSTICKID1 = 0</pre>  
 
:und  
 
:und  
  <code vb> Const JOYSTICKID16 = 15</code>
+
  <pre> Const JOYSTICKID16 = 15</pre>
 
:möglich.
 
:möglich.
  
Zeile 28: Zeile 28:
 
: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>
+
<pre>
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)</code>
+
Const JOYERR_UNPLUGGED = (JOYERR_BASE + 7)
 +
</pre>
  
===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==
  
<code vb>
+
<pre>
 
  Dim JIE As JOYINFOEX
 
  Dim JIE As JOYINFOEX
 
   
 
   
Zeile 59: Zeile 60:
 
     ' Fehler beim Aufruf
 
     ' Fehler beim Aufruf
 
  End If
 
  End If
</code>
+
</pre>
  
 
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 76:
 
* [[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 />

Version vom 12. Mai 2008, 23:09 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