GetKeyState |
Declare Function Api_GetKeyState& Lib "user32" Alias "GetKeyState" (ByVal nVirtKey&) |
Declare Function GetKeyState Lib "user32" Alias "GetKeyState" (ByVal nVirtKey As Long) As Integer |
|
指定された仮想キーの状態を取得する。状態とは、キーが押されているか、押されていないか、トグルになっているかどうか( オンとオフの 2 つがあり、キーを押すたびに入れ替わる)を表す。 |
|
パラメータ 希望の仮想キーが文字キーまたは数字キー(A〜Z、a〜z、0〜9)である場合、nVirtKey にその文字の ASCII コードを指定しなければ
ならない。他のキーの場合は、仮想キーコードを指定しなければならない。 含め、ほとんどの文字を表すために使われている。 たとえば、ドイツ語のキーボードレイアウトでは、ASCII の「O」(0x4F)の値に相当する仮想キーは「o」キーを意味するが、
VK_OEM_1 は「ウムラウト(¨)付きの o」キーを意味する。 る。最下位ビットが 0 のときはキーが OFF になっていて、トグルが解除されていることを示す。キーボードにトグルキーのインジケータランプ
が用意されている場合、キーがトグル状態になっているとランプは点灯し、トグル解除状態ではランプは消灯する。 キーの状態は、ハードウェアによる割り込みレベルの状態を反映しない。
割り込みレベルの情報を取得するには、GetAsyncKeyState 関数を使う。
この関数は、入力メッセージが生成されたときのキーの状態を取得する。 この場合、左右を区別することなく、Shift、Ctrl、Alt の各キーの状態を取得できる。
また、アプリケーションは nVirtKey の値として次の仮想キーコード定数を使うことにより、これらのキーの左右を区別できる。 関数に限って利用できる。 |