作者ric2k1 (Ric)
看板EE_DSnP
标题[讨论] HW#2 关於 ESC 键的问题
时间Thu Oct 21 13:40:16 2010
[同学的问题]
因为我修改好了自己的部分之後测试发现单按ESC会有小BUG,
开了DDD之後才发现教授写的code里面似乎没有针对这个情形作对应。
[回答]
在参考的 charDef.cpp (i.e. #else 部分) 的确没有将光按 ESC 键的情形处理好,
比较好的处理方式是:
case ESC_KEY: {
char combo = mygetc(istr);
// Note: ARROW_KEY_INT == MOD_KEY_INT, so we only check MOD_KEY_INT
if (combo == char(MOD_KEY_INT)) {
...
}
// else return UNDEFINED_KEY;
else { mybeep(); return checkChar(combo, istr); }
将最後的 "else return UNDEFINED_KEY" 改成将按完 ESC 键後的下一个键再交由
checkChar() 处理一次。
这样应该是可以解决光按 ESC 键的问题。
小小的瑕疵是那个 beep sound 会在下一个键按了之後才会叫,
但也没有办法。
另外就是一些没有 support 的 combo 键,像是 F1, F2 等等,
按了会出现一些符号,但这也是 OK 的,因为反正没有 support。
[关於评分]
由於这种情形没有定义在 spec 里,所以我们不会拿来评分。
大家可以自行决定要不要 handle.
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.112.21.241
1F:推 yorunosora:谢谢教授! 10/21 14:09