前面是不断后退的路 2020-07-27 16:14 采纳率: 100%
浏览 1655
已采纳

EasyX怎样才能实现“键盘输入控制图片移动”的功能

代码


#include <graphics.h>
#include <iostream>

int x = 0;
int y = 0;
IMAGE tank;
void move(char input) {
    //清除旧图片
    clearrectangle(x, y, x + 60, y + 60);
    switch (input) {
    case 'w': //上 
        y -= 10;
        break;
    case 's': //下 
        y += 10;
        break;
    case 'a'://左 
        x += 10;
        break;

    case 'd': //右 
        x -= 10;
        break;
    default:
        break;
    }
    //绘制新图
    putimage(x, y, x+60, y+60, &tank, 0, 0, SRCCOPY);
} 
int main()
{
    initgraph(640, 480);
    loadimage(&tank, L"FC\\p1tankU.gif", 60, 60, true);//加载图图
    putimage(0, 0, 60, 60, &tank, 0, 0, SRCCOPY);//初始显示位置

    char input='w';
    //通过不断输入来移动图片
    while(true){
        input = std::cin.get();
        if (input == '\n') {
            break;
        } else  {
            move(input);
        }
    } 
    closegraph();
}

问题

我想通过这个代码实现键盘输入来控制图片移动,运行时控制台显示已经读入l了字符, 但是结果是图形界面没有任何变化。想知道怎样才能实现“键盘输入控制图片移动”的功能。

  • 写回答

3条回答 默认 最新

  • qq_29366533 2020-07-27 16:55
    关注

    你按下w、s、a、d之后需要按下回车才行

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 关于#c语言#的问题:我现在在做一个墨水屏设计,2.9英寸的小屏怎么换4.2英寸大屏
  • ¥15 模糊pid与pid仿真结果几乎一样
  • ¥15 java的GUI的运用
  • ¥15 Web.config连不上数据库
  • ¥15 我想付费需要AKM公司DSP开发资料及相关开发。
  • ¥15 怎么配置广告联盟瀑布流
  • ¥15 Rstudio 保存代码闪退
  • ¥20 win系统的PYQT程序生成的数据如何放入云服务器阿里云window版?
  • ¥50 invest生境质量模块
  • ¥15 nhanes加权logistic回归,svyglm函数