curses函数中关于键盘的问题,我为什么不能得到键KEY_ENTER的输入.

yrj 2002-11-24 01:40:31
但我能可以得到KEY_DOWN和KEY_UP和其他键的输入,
我已经使用了
keypad(win,TRUE);
nonl();函数了,
nonl()不用也不行,为什么?
...全文
210 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
x86 2002-11-25
  • 打赏
  • 举报
回复
enter是0x0a或者0x0d,取值在nonl()和nl()的时候不一样。
不要用KEY_ENTER去判断
yrj 2002-11-25
  • 打赏
  • 举报
回复
我跟踪了一下,原来是13,只有判断是否是13了
yrj 2002-11-24
  • 打赏
  • 举报
回复
用了也不行
x86 2002-11-24
  • 打赏
  • 举报
回复
用cbreak();
======================
#include <curses.h>

int main(int argc, char* argv[]){
int ch;
initscr();
cbreak();
noecho();
keypad(stdscr, TRUE);
start_color();
init_pair(1, COLOR_RED, COLOR_BLACK);
attron(COLOR_PAIR(1));
for(;;){
ch = getch();
if(ch == 'q') break;
mvprintw(10, 10, "KEY(%X)=%s\n", ch, keyname(ch));
refresh();
}
endwin();
return 0;
}

23,121

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧