ncurses - wgetch 未检测到 KEY_UP 等
问题描述
我已经为 my_win 启用了键盘,但是当我在运行程序后按 KEY_UP 时,没有任何反应。奇怪的是它与 stdscr 完全兼容。这似乎只是 my_win 的问题。
/* Selects different elements of the list */
while ((ch = wgetch(my_win)) != 'q')
{
sprintf(item, "%-12s", list[i]);
mvwprintw(my_win, i + 1, 2, "%s", item);
switch(ch)
{
case KEY_LEFT:
destroy_win(my_win);
my_win = create_newwin(height, width, starty,--startx);
wprintw(my_win, "This is some text");
wrefresh(my_win);
break;
case 'd':
destroy_win(my_win);
my_win = create_newwin(height, width, starty,++startx);
wprintw(my_win, "This is some text");
wrefresh(my_win);
break;
case 'w':
destroy_win(my_win);
my_win = create_newwin(height, width, --starty,startx);
wprintw(my_win, "This is some text");
wrefresh(my_win);
break;
case 's':
destroy_win(my_win);
my_win = create_newwin(height, width, ++starty,startx);
wprintw(my_win, "This is some text");
wrefresh(my_win);
break;
case KEY_UP:
i--;
i = (i < 0) ? 4 : i;
break;
case KEY_DOWN:
i++;
i = (i < 0) ? 4 : i;
break;
}
解决方案
推荐阅读
- ubuntu - 如何从 Ubuntu 命令(Alt + F2)打开 WPS 写入、演示和电子表格应用程序
- php - .htaccess 基于referrer的重定向
- machine-learning - 使用布尔公式的分类器
- java - ehcache3 - 为什么缓存不会过期?
- php - Codeigniter:文件上传在 localhost 上工作,但不在服务器上(JSON 输入意外结束)
- spring-boot - 如何从 @Async 带注释的方法中抛出异常
- javascript - Promise.all() 比对每个 Promise 都使用 await 慢?
- java - 在 Core Java 中识别 Android 设备
- android - Ubuntu OS 中的 adb 管理器无法识别 Android 设备(已识别模拟器)
- ios - Firebase Crashlytics 集成未检测或报告崩溃