FreeBASIC Getjoystick
目次→描画ライブラリー参考→ユーザ入力関連→GETJOYSTICK←オリジナル・サイト
接続されているゲーミング装置から、ボタンと操作軸の情報を、読みます。
構文:
用法:
result = Getjoystick
( id[, buttons[, a1[, a2[, a3[, a4[, a5[, a6[, a7[, a8]]]]]]]]] )
パラメタ:
id
装置 ID 番号(0 - 15)
buttons
ボタンの状態
a1
1番目の、軸値
a2
2番目の軸値
a3
3番目の軸値
a4
4番目の軸値
a5
5番目の軸値
a6
6番目の軸値
a7
7番目の軸値
a8
8番目の軸値
戻り値:
0 は成功で、1 は失敗です。
浮動小数点形式で、すべての軸の位置を返します。
記述:
Getjoystick は、ボタンの状態、および 8 本までの軸の位置を検索します。ジョイスティックは、0〜15 の
id 番号で認識します。
ボタンは、
Getmouse と同様の方法で、格納します。
buttons の各ビットがボタンを表しています。
それぞれの有効な軸に対して、-1.0 と 1.0 の間の単精度値を返します。
軸がコントローラで存在していないなら、-1000.00 の値を返します。
Getjoystick は、無事終了のときに 0 を返します。
失敗の場合には、1 を返します。
失敗は、不当なジョイスティック番号を指定することによって、引き起こされる場合があります。また、存在しないジョイスティックを指定した場合や、ジョイスティックAPIでの失敗の場合もあります。
Getjoystick が返すエラー・コードは、次の行で
Err を使って確認できます。
Getjoystick の関数バージョンは、エラーコードを直接 32 bit
Long で返します。
例:
注:FreeBASIC 1.08〜 で、SetEnviron を追加しなくても、日本語環境で描画画面が表示されるように改善されました。
' Sets the graphics method GDI
' 描画方法を GDI に設定
SetEnviron("fbgfx=GDI")
Screen 12
Dim x
As Single
Dim y
As Single
Dim buttons
As Integer
Dim result
As Long
Dim a
As Integer
Const JoystickID =
0
'This line checks to see if the joystick is ok.
'この行は、ジョイスティックが間違いないかどうか確認し、チェックするものです。
If GetJoystick(JoystickID,buttons,x,y
) Then
Print "Joystick doesn't exist or joystick error."
Print
Print "Press any key to continue."
Sleep
End
end
If
Do
result =
GetJoystick(JoystickID,buttons,x,y
)
Locate 1,
1
Print ;
"result:";result;
" x:" ;x;
" y:";y;
" Buttons:";buttons,
"",
"",
""
'これは、1 〜27 までのどのボタンが押されるかを確認するために、テストします。
For a =
0 To 26
If (buttons
And (1 Shl a
)) Then
Print "Button ";a;
" pressed.
"
Else
Print "Button ";a;
" not pressed."
End If
Next a
Loop
方言差:
-
-lang qb 方言では、別名 __Getjoystick と共に参照をつけないと、使えません。
QBからの違い:
参照:
ページ歴史:2022-03-25 11:42:35
日本語翻訳:WATANABE Makoto、原文著作者:
JasonFirth