Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/unix/3.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
Unix 在ncurses中,是否有一种简单的方法来使用8种标准前景色和背景色的每一种组合?_Unix_Ncurses - Fatal编程技术网

Unix 在ncurses中,是否有一种简单的方法来使用8种标准前景色和背景色的每一种组合?

Unix 在ncurses中,是否有一种简单的方法来使用8种标准前景色和背景色的每一种组合?,unix,ncurses,Unix,Ncurses,我注意到(至少在我的平台上)颜色对是64。我了解到颜色对0始终是默认的前景色和背景色,不能更改。对于8种默认颜色,这意味着我们可以显式设置这8种颜色的每种组合,除了一种。这对我来说是个问题,因为用户可能不一定像我一样有一个黑白终端。对我来说,另一个潜在的问题是,我有一个透明的终端,颜色对0保留透明的背景,而使用带有黑色背景的显式颜色对在我的终端上看起来不透明 有没有一种方法可以使用所有64种颜色的组合,而这些颜色可能不是我在网上不断找到的关于ncurses的蹩脚文档中提到的?或者在初始化库以扩展

我注意到(至少在我的平台上)颜色对是64。我了解到颜色对0始终是默认的前景色和背景色,不能更改。对于8种默认颜色,这意味着我们可以显式设置这8种颜色的每种组合,除了一种。这对我来说是个问题,因为用户可能不一定像我一样有一个黑白终端。对我来说,另一个潜在的问题是,我有一个透明的终端,颜色对0保留透明的背景,而使用带有黑色背景的显式颜色对在我的终端上看起来不透明

有没有一种方法可以使用所有64种颜色的组合,而这些颜色可能不是我在网上不断找到的关于ncurses的蹩脚文档中提到的?或者在初始化库以扩展我可以使用的颜色对数量之前,将颜色对更改为128安全吗?如果我找不到合理的解决方案,我可以在程序中使用Termbox。我想使用ncurses,因为它支持广泛,而且大多数类似Unix的平台默认都包括它,但是Termbox有一个简单得多的API。

对于()来说,默认配置提供256种颜色,32767种颜色对。如果您有一个最新版本的ncurses,您可以很容易地获得64种颜色对


可能有一个更简单的API,但是(请阅读)功能较差,而且显然没有处于积极开发阶段(上一次源代码更改是在8个月前)。

是的,我也有同样的问题。使用
use_default_colors
启用透明背景和默认前景,我总共得到了9x9=81个潜在颜色对,但我只有64个颜色对(可能更少),这是一个问题,因为我希望支持任意组合。这太糟糕了,哈哈。