gpt4 book ai didi

c - 使用 X11 访问自定义 XResources 颜色

转载 作者:太空宇宙 更新时间:2023-11-04 00:03:58 25 4
gpt4 key购买 nike

我刚刚开始使用 X11 库编写我的第一个程序。首先,我只是尝试访问 xrdb 中定义的用户配色方案中的颜色。例如,在我的 ~/.Xresources 中,我有如下内容:

*color8:     #073642
*color0: #002b36

我还验证了当我运行 xrdb -query 时这些颜色会显示。到目前为止,在我的 C 程序中我有:

#include <X11/Xlib.h>
#include <X11/Xresource.h>

int main (int argc, char *argv[])
{
Display* display = XOpenDisplay (0);
XrmDatabase xrdb = XrmGetDatabase (display);
XrmValue v;
Colormap cmap = DefaultColormap (display, DefaultScreen (display));
XColor screenColor;
XColor exactColor;

if (! XAllocNamedColor (display, cmap "color0", &screenColor, &exactColor))
printf ("ERROR\n");

printf ("%u %u %u\n", screenColor.red, screenColor.green, screenColor.blue);

return 0;
}

但是这个错误。那我错过了什么?有没有更好的方法来做我想做的事情?谢谢!

最佳答案

当你想访问由xrdb加载的Xresource文件中设置的参数时,你需要

xrdb = XrmGetStringDatabase(XResourceManagerString(display));

而不是 XrmGetDatabase(...)。希望解决(最近)你的问题。

关于c - 使用 X11 访问自定义 XResources 颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31445141/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com