看板 GameDesign 關於我們 聯絡資訊
哈囉~~大家好 現在碰到一個問題 寫了老鼠走迷宮之後 要用鍵盤控制老鼠上下左右 原本是設計用英文字元來控制 但是想要改良成用鍵盤的方向鍵(↑↓← →) 查了一下關於方向鍵的code // this function handles events for special keys such as the arrow keys or function keys. void special(int key, int x, int y) { switch(key) { case GLUT_KEY_UP: // do something break; case GLUT_KEY_DOWN: // do something break; case GLUT_KEY_LEFT: // do something break; case GLUT_KEY_RIGHT: // do something break; default: break; } } 因為我的case想要有一個要按ESC離開 請問如果要加上ESC應該要打什麼才可以使用?? 再來我改成以上方式... 卻無法使老鼠依方向鍵移動... code如下... void keyboard(unsigned char key, int x, int y) { int width = WIDTH, height = HEIGHT; switch (key) { case 'q': case 'Q'://暫用q,想改成ESC exit(0); break; case GLUT_KEY_UP: if((maze+m)->up) { m-=width; mymouse(1); PrintMaze (maze, width, height); } break; case GLUT_KEY_RIGHT: if((maze+m)->right && 255!=m) { m++; mymouse(2); PrintMaze (maze, width, height); } break; case GLUT_KEY_DOWN: if((maze+m)->down) { m+=width; mymouse(3); PrintMaze (maze, width, height); } break; case GLUT_KEY_LEFT: if((maze+m)->left && 0!=m) { m--; mymouse(4); PrintMaze (maze, width, height); } break; } } 改成這樣子,只有把case後面的字元改成GLUT_KEY_xxxx: 但是無法動作... 不知道大家可否跟我說哪裡出問題 編譯是沒有問題 但是就是無法動作 非常感謝... 新手>"<多多包函 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 59.115.189.27 ※ 編輯: percussionsd 來自: 59.115.189.27 (12/17 21:02)
percussionsd:我知道原因了>"< 不過似乎不能使用ESC鍵? 12/17 22:22
Macchiati:ESC請使用 case 27: 12/17 23:29