c - 如何在 x11 中的根窗口上写入?

标签 c x11 xlib xserver

我已经阅读了很多类似这个标题的问题,但没有一个能得到符合我需要的答案。

我想在我的根窗口(用 C 语言)上写一些东西,用于显示诸如正常运行时间之类的东西作为示例。问题是:我想一直把它作为背景! 有一种方法可以使用背景图像并在其上绘制并将其设置为背景,但这很丑陋。另一种方法是在根窗口上写入并始终刷新它,因此如果另一个窗口覆盖并揭开我打印的内容,它将几乎立即刷新。但这并不是真正的答案,因为能源/CPU 时间很昂贵。

亲切的问候。

最佳答案

只需添加公开事件处理程序,并在每次向您发送 ExposeNotify 事件时执行您的代码。 不要忘记设置公开事件输入掩码:XSelectInput(display, root, ExposureMask),以便将事件发送到您的客户端(每个窗口事件掩码针对每个客户端单独存储)

关于c - 如何在 x11 中的根窗口上写入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13179240/

相关文章:

c - 在图中删除/插入顶点时出现问题

有人可以向我解释 'sigaction' 是如何工作的吗?

c - X11 中的滚轮事件

linux - 如何使用 XLib 和 Xcursors 在 Linux 中加载 Windows 游标 (.cur)?

python - 在 C++ 中循环 "all the way through"数组是否有最佳实践?

c - 在 Assembly x86 中获取三个数字的最大值时出现段错误

c - X11:如何正确支持每像素 16 位显示

configuration - 用于X11转发的SSH压缩

c - X 工具包 : heap is growing when recreating widgets

c++ - Xlib 多窗口事件处理