1

イベントを使用してキーが押されたかどうかをテストする方法は知っていますが、CI ではその方法がわかりませんでした。

私が正確に欲しいのは、、、および矢印キーをリッスンする「UpKeyListener 」ですDownLinuxで動作する必要があるため、Windows ライブラリはありません。そして、可能であれば、サードパーティのライブラリを使用しないことが私にとって最良の選択肢です。LeftRight

私が欲しいものの疑似コード:

int main() {
 
    // key listener {
    // if(key == up) { // do something }
    // if(key == down) { // do something }
    // if(key == left) { // do something }
    // if(key == right) { // do something }
    // }
}
4

2 に答える 2

5

SDLを使ってキーボードも読むのはどうですか。

  SDL_Event event;
  .
  .
  /* Poll for events. SDL_PollEvent() returns 0 when there are no  */
  /* more events on the event queue, our while loop will exit when */
  /* that occurs.                                                  */
  while( SDL_PollEvent( &event ) ){
    /* We are only worried about SDL_KEYDOWN and SDL_KEYUP events */
    switch( event.type ){
      case SDL_KEYDOWN:
        printf( "Key press detected\n" );

        if (event.key.keysym.sym==SDLK_UP) 
            printf( "It was the UP key\n" );

        break;
      case SDL_KEYUP:
        printf( "Key release detected\n" );
        break;

      default:
        break;
    }
  }
  .
  .

出典:http ://www.libsdl.org/docs/html/guideinputkeyboard.html

于 2012-10-03T13:19:12.203 に答える