ゲームが作れるようになるまでがんばる日記

ゲーム制作のことを中心にゲームに関することを書いています

GetAsyncKeyState

Win32アプリケーションでリアルタイムでキーボードの入力を取りたいときには、GetAsyncKeyStateを使えばよい。DirectInputを使う方法もあるが、そこまでこったものにする必要は無いときにはGetAsyncKeySateのほうが手軽に使える。
たとえば、スペースキーが押されているか調べる方法は次の通り。

if( GetAsyncKeyState(VK_SPACE) & 0x8000 )
{
    // 押されたときの処理
}

引数にはキーコードを渡す。カーソルキーのキーコードは次の通り。

VK_UP    上
VK_DOWN  下
VK_RIGHT 右 
VK_LEFT  左

普通のアルファベットのキーの場合はシングルクォーテーションで囲む。

if( GetAsyncKeyState('A') & 0x8000 )
{
    // Aが押されたときの処理
}

参考:MSNのGetAsyncKeyStateのページ