犬が歩く速度を↑↓キーで調整する

犬のアニメーション
VC++ でタイマ割り込みの速度を↑↓キーで変更して、アニメーション速度を調整します。

前田稔(Maeda Minoru)の超初心者のプログラム入門

プロジェクトの設定

  1. 新規プロジェクト(DogSpeed)を作成して my.lib と my.h をフォルダーに格納して下さい。
    プロジェクトの作成方法は 犬が歩くアニメーションを描画する と同じです。
  2. DogSpeed.cpp にタイマ割り込みの間隔を格納する領域(SPEED) を追加して下さい。
        int          SPEED= 200; 
        
  3. WndProc() に WM_KEYDOWN: を追加します。
    ↓キーが押されるとアニメーション速度を約20%ずつ遅くします。
    ↑キーが押されるとアニメーション速度を約10%ずつ早くします。
    不当に SPEED が小さくならないように「10」で歯止めをかけています。
    キーを押し続けるとリピート機能が働いて、連続して VK_DOWN:(VK_UP:) が検出されることを確認して下さい。
        case WM_KEYDOWN:            //KEY が押された
            switch(wParam)
            {   case VK_DOWN:       //PageDown
                    KillTimer(hWnd,ID_TIMER);
                    SPEED= (SPEED*12)/10;
                    SetTimer(hWnd,ID_TIMER,SPEED,NULL);
                    break;
                case VK_UP:        //PageUp
                    KillTimer(hWnd,ID_TIMER);
                    SPEED= (SPEED*9)/10;
                    if (SPEED<9)    SPEED= 10;
                    SetTimer(hWnd,ID_TIMER,SPEED,NULL);
                    break;
            }
            break;
        
  4. あとの説明は 犬が歩くアニメーションを描画する と同じです。
  5. VK_DOWN などのキーの定義は C:\Program Files\Microsoft Visual Studio\VC98\Include\Winuser.h に記述されているので確認して下さい。

超初心者のプログラム入門(Win32API C++)