DIMOUSESTATE
最大 4 つのボタンがあるマウス デバイス、またはマウス デバイスと同様にアクセスされる別のデバイスの状態を記述します。この構造体は、IDirectInputDevice8::GetDeviceState メソッドで使用されます。
typedef struct DIMOUSESTATE {
LONG lX;
LONG lY;
LONG lZ;
BYTE rgbButtons[4];
} DIMOUSESTATE, *LPDIMOUSESTATE;
メンバ
- lX
X 軸です。 - lY
Y 軸です。 - lZ
Z 軸です。通常はホイールです。マウスに Z 軸がない場合、この値は 0 です。 - rgbButtons
ボタンの配列です。バイトの上位ビットは、対応するボタンが押されている状態のときに設定されます。
解説
マウス形式のアクセスに対応するようにデバイスを準備するには、IDirectInputDevice8::SetDataFormat メソッドを呼び出し、 c_dfDIMouse グローバル データ フォーマット変数を渡します。
マウスは相対軸デバイスなので、マウス軸の絶対軸の位置は、相対的な動きを累積したものになります。したがって、絶対軸の位置の値は、他の絶対軸の位置と比較する場合を除いて意味がありません。
軸が相対モードであれば、適切なメンバーに位置の変化が格納されます。絶対モードであれば、メンバーに絶対軸位置が格納されます。