SDL按键

刘易斯

我正在尝试制作一个能够使用SDL检测按键的程序。

我当前的代码是其他人的修改版本(试图在制作自己的版本之前使其工作)。

#include "SDL/SDL.h"
#include <iostream>
using namespace std;

int main(int argc, char* argv[]) {
    //Start SDL
    if(0 != SDL_Init(SDL_INIT_EVERYTHING)) {
            std::cout << "Well I'm screwed\n";
            return EXIT_FAILURE;
    }
    SDL_Surface* display;
    display = SDL_SetVideoMode(640, 480, 32, SDL_HWSURFACE | SDL_DOUBLEBUF);
    SDL_Event event;
    bool running = true;
    std::cout << "Cake"; //Testing output (doesn't work)
    while(running) {
            std::cout << "Pie"; //Again, testing output and again doesn't work
            if(SDL_PollEvent(&event)) { //I have tried this is a while statement
                    switch(event.type) {
                            case SDL_KEYDOWN:
                                    std::cout << "Down\n"; // Have tried "<< std::endl" instead of "\n"
                                    break;
                            case SDL_KEYUP:
                                    std::cout << "Up\n";
                                    break;
                            case SDL_QUIT:
                                    running = false;
                                    break;
                            default:
                                    break;
                    }
            }
    }
    //Quit SDL
    SDL_Quit();

    return 0;
}

该代码应该可以检测到任何按键按下/按下并输出,但不会输出任何内容。

我的最终目标是使它检测konami代码,然后执行某些操作。

我不断地更新上面的代码,使其与我正在使用的代码相同(除了添加了有关人们建议的注释)。

另外,如果有帮助的话:这g++ -o myprogram.exe mysource.cpp -lmingw32 -lSDLmain -lSDL是我正在编译的命令。(如果您没有从命令中弄清楚,我正在运行Windows(7)。)编译时不会发生错误。

我现在正在获得任何输出,这使我相信我的概率与密钥检查无关。但是有可能是不正确的。

刘易斯

SDL默认情况下将输出重定向到stdout.txt

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章