在真彩色视觉对象中设置 XWindow "Pixel" 数据类型

Setting an XWindow "Pixel" data type in a Truecolor visual

一些 XWindow GUI 工具包(例如 Motif)使用 X11 像素数据类型设置小部件颜色。例如,设置小部件的前景色或背景色是通过 XmNforeground 和 XmNbackground 值完成的,它们需要 Pixel 数据类型。

但是,我发现的所有文档和样本都是从名为 color 的字符串(即:"red")或使用 XAllocColorCells() 构建像素值,这意味着伪彩色视觉对象。

我需要一些方法来根据真彩色视觉对象中的红色、绿色和蓝色值设置 XmNbackground 资源。我怎样才能做到这一点?提前致谢。

使用XAllocColorXAllocNamedColor。他们在所有类型的视觉效果中工作。

XAllocColorCells 在任何情况下都不是您所需要的。它专为动态色彩图而设计。这些允许您通过更改颜色图来循环屏幕颜色,而无需更新实际屏幕像素,并执行其他巧妙的技巧。