キーボード入力を検知する「GetAsyncKeyState」 夢の女神戦バージョン1ではキーボードが駄目でした バージョン1ではキーボード検知が上手く出来ていません。 素早くキーを入力すると止まってしまいます。 これでは使い物にならないのでキーボード入力は対応外と言う事になってしまいました。 一応動くようにしてありますが、マニュアルには「マウス専用」と書きました。
VisualBasicではKeyDownイベントを使用してキー入力を検知します。
これは連続入力には向いておらず、一つ一つ丁寧にキーを押す必要があります。 Windows.API 「GetAsyncKeyState」 GetAsyncKeyStateはキーボードの状態を非同期的に取得するWindows APIです。 これを使用して検知する事にしました。
宣言
使用例
あ、GetKeyStateでも良いと思います。これは今のキーの状態が分かります。
たまたまGetAsyncKeyStateを先に知りましたので、GetAsyncKeyStateを使いました。 キーボード使用時の注意点 必要であれば以前の入力情報を消しておきましょう。 GetAsyncKeyState (vbKeyUp) '上キーの場合 ・・とか書くと消えます。 最上位ビットや最下位ビットを上手く区別してやれば要らないかも。 上の使用例みたいに手軽に検知する時は以前の入力情報を消してやるほうが良いです。 GetKeyStateだったらしなくて良いのかな。
多重入力を回避しましょう。 |