/****************** 使用宏来反应按键的输入*************************************/ #define KEYDOWN(vk_code)((GetAsyncKeyState(vk_code) & 0x8000)? 1:0) #define KEYUP(vk_code)((GetAsyncKeyState(vk_code) & 0x8000)? 0:1) /********************* 要添加的宏替换 *******************************************/ #define VK_UP 0x26 //上箭头 #define VK_DOWN 0x28 //下箭头 #define VK_LEFT 0x25 //左箭头 #define VK_RIGHT 0x27 //右箭头 #define VK_SPACE 0x20 //空格键 #define VK_NUMPAD 0x65 //小键盘 5 #define VK_ESCAPE 0x1B //ESC /********************** 部分按键宏的声明*****************************************/ /************************ 以下代码实现 *******************************************/ if (KEYDOWN('w') || KEYDOWN('W')) { tankIPv1->orientation = UP; movement2(tankIPv1); return; } else if (KEYDOWN('s') || KEYDOWN('S')) { tankIPv1->orientation = DOWN; movement2(tankIPv1); return; } else if (KEYDOWN('a') || KEYDOWN('A')) { tankIPv1->orientation = LEFT; movement2(tankIPv1); return; } else if (KEYDOWN('d') || KEYDOWN('D')) { tankIPv1->orientation = RIGHT; movement2(tankIPv1); return; } else if (KEYDOWN(VK_SPACE)) //空格 { InsertBull(tankIPv1); return; }