Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Curses 禁用Python诅咒中的函数键_Curses - Fatal编程技术网

Curses 禁用Python诅咒中的函数键

Curses 禁用Python诅咒中的函数键,curses,Curses,我正在使用Python诅咒编写一个应用程序,我想知道是否有办法禁用函数键。我已将键盘(1)设置为一次读取一个字符。。这适用于插入键、主键、删除键、向上翻页键和向下翻页键,但不适用于功能键 我需要完全禁用功能键,我想控制所有键的行为 谢谢,您可以使用ascii码:例如,27是ESC,您不能让功能键消失(除非您将用户限制为非常普通的键盘),但如果您想这样做,您可以检测并忽略它们 您可以打开小键盘,忽略非ASCII字符(0到255范围之外),也可以关闭小键盘,自己过滤掉。Python curses接口

我正在使用Python诅咒编写一个应用程序,我想知道是否有办法禁用函数键。我已将键盘(1)设置为一次读取一个字符。。这适用于插入键、主键、删除键、向上翻页键和向下翻页键,但不适用于功能键

我需要完全禁用功能键,我想控制所有键的行为


谢谢,您可以使用ascii码:例如,27是ESC,您不能让功能键消失(除非您将用户限制为非常普通的键盘),但如果您想这样做,您可以检测并忽略它们

您可以打开
小键盘
,忽略非ASCII字符(0到255范围之外),也可以关闭小键盘,自己过滤掉。Python curses接口提供了可以比较键的方法,而底层curses库返回的函数键值超过255。一个简单的范围检查就足以排除任何不需要的关键点

功能键(也称为特殊键)如果不是单个控制字符(代码0到31或127-名称见Python类),通常作为转义序列发送,转义序列遵循从主机到终端的另一个方向发送的控制序列的格式规则

格式规则对转义序列的不同部分使用不同的ASCII字符。以下是最常用的格式(
CSI
)的摘要:

  • 电子稳定控制系统
  • [
  • 指定专用序列的可选字符(其中一个
  • 用分号分隔的可选数字参数(
  • 最后一个字符(范围64到126)
一些程序(如
vi
)接受普通ESC字符,并且在收到转义字符后必须等待一小段时间,以确定以下字符是否显示键入了特殊键。如果不必这样做,您可以(如
emacs
)简单地假设每个转义字符都启动一个特殊键


中询问了一个相关问题,如果您从多个窗口获取字符,请注意您必须在每个窗口上设置
键盘
——设置不会从
stdscr
复制。