人生のプチ美学を教えてください!!

WinAPIのキー操作についての質問です。
たとえばメモ帳で'A'を押し続けると、まず1つだけ'a'と出て少し時間をおいてから2つめ、3つめの'a'が出ますよね。
自分はWinAPIでゲームを作っていて、キー操作でキャラクターが動くようにしたいのですが、どうやっても上の'a'のような1回止まる動きになってしまいます。どのようにすれば止まらない普通の動きになるのでしょうか。
説明がわかりにくいかもしれませんが、どなたかお願いします^^;

A 回答 (2件)

>まず1つだけ'a'と出て少し時間をおいてから2つめ、3つめの'a'が出ますよね。



キーリピートの設定でしょう。
ユーザーごとの設定ですので勝手に変更するべきではない…と思いますが。

GetKeyState()などで、現在のキーの状態が取得できます。
Windowsのメッセージではなく、こちらで対処すべき…かと。
    • good
    • 0

キーが押されたときにはWM_KEYDOWNイベントが発生します。


逆にキーが離されたときにはWM_KEYUPイベントが発生します。

したがって、特定のキーに対してWM_KEYDOWNイベントが発生してからWM_KEYUPが発生するまでの間はキーが押され続けているとして判断します。
処理のタイミングはキーのイベント発生毎に行うのではなく、アイドルイベントまたはタイマー処理等にて定期的に行うようにすれば良いのではないでしょうか。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!