2011-06-08 52 views
1

ncurses:ncurses A_PROTECT属性的作用是什么?

1. A_PROTECT属性是干什么用的?网络上的每个地方,文档只是说:保护模式。那是什么?

2.此外,我想标记用户用下划线输入字符的区域,但我希望当用户删除或退格时重新出现下划线。有没有这样的属性,或者我必须手动做到这一点?

回答

3

保护模式可以指的是很少使用某些DEC终端(特别是VT220和相关的)的功能称为选择性擦除。

一般的想法是,一些文本可以在内部标记为受保护的。这不会改变它在屏幕上的显示方式,但如此标记的字符单元不会被DECSEL和DECSED(选择性擦除行和选择性擦除数据)命令擦除。

这通常会用来实现类似数据输入表单的东西。字段标题和标记将是受保护的文本,并且输入到字段中的数据将不受保护。您可以通过执行选择性擦除来擦除表单的内容以重置它;从而擦除数据字段而不是标题。

1

保护模式由终端定义我不确定它是否在现代终端上执行任何操作。

如果您的终端支持它,则会有一个属性“A_UNDERLINE”强调字符。

对于处理输入你可能想看看表单库(与ncurses的分布)或CDK(http://invisible-island.net/cdk/)