xlib相关内容

位深度为32的窗口上的阴影

在我的重定父窗口管理器中,我将窗口重定为具有相同位深度的框架: let geom = self.conn.get_geometry(ev.window)?.reply()?; let attr = self.conn.get_window_attributes(ev.window)?.reply()?; let frame_win = self.conn.ge ..
发布时间:2022-05-09 11:13:32 其他开发

如何为Depth=32的窗口设置不透明背景

在我的父子关系窗口管理器中,我有一些创建框架窗口的代码: let screen = &self.conn.setup().roots[self.scrno]; let geom = self.conn.get_geometry(ev.window)?.reply()?; let attr = self.conn.get_window_attributes(ev ..
发布时间:2022-05-09 11:04:39 其他开发

如何有效地确定多边形是凸面、非凸面还是复面?

来自 XFillPolygon: 如果 shape 是 Complex,则路径可能会自相交.请注意,路径中的连续重合点不会被视为自相交. 如果shape是凸,对于多边形内的每一对点,连接它们的线段不与路径相交.如果客户知道,指定 Convex 可以提高性能.如果您为非凸形路径指定凸形,则图形结果未定义. 如果 shape 是 Nonconvex,则路径不会自相交,但形状不是完全凸 ..
发布时间:2022-01-14 14:58:41 其他开发

使用 python xlib 全局捕获、忽略和发送 keyevents,识别假输入

我想在普通键盘上实现键和弦,我想我使用 python xlib.为此,程序必须全局吞下所有关键事件,然后才允许它们通过. 我当前的测试只是抓住了“1"键.如果按下此键,它会调用一个处理程序,该处理程序通过 xtest.fake_input 将“x"发送到焦点窗口.因为我只抓住“1"键,所以应该没有问题,对吧?但不知何故,处理程序再次被调用,因为“x"被按下.事实上,当我输入“1"时,程序正在 ..
发布时间:2022-01-13 22:54:11 Python

不支持 OpenGL GLX 扩展

我在 Ubuntu 10.04 中安装了 OpenGL 和 freeglut,它在 10.04 和 10.10 中运行良好.但是在我升级到 11.04 之后,我使用 OpenGL 开发的应用程序无法正常运行.它们编译时没有错误,但是当我尝试执行它们时,出现错误: 对于 GLUT: Xlib:显示“:0.0"上缺少扩展“GLX".freeglut (./a.out): 显示 ':0.0' 不 ..
发布时间:2021-12-19 18:25:32 其他开发

带有 Xlib 的空或透明窗口仅显示边框线

有没有办法用 Xlib 创建一个窗口,它只显示边框线、标题、关闭按钮并且可以用鼠标移动?窗口的内容必须为空(或“完全透明",尽管“透明"听起来更像是我不需要的效果).基本上窗口应该显示背景区域. 解决方案 我不确定这是否是您想要的,但以下代码创建了一个具有透明背景的 X 窗口,但仍使用窗口管理器的窗口装饰. 只有当您的 X11 和图形硬件配置支持 32 位深度的视觉效果时,它才能工作 ..
发布时间:2021-12-18 11:46:31 其他开发

如何退出对 xlib 的 XNextEvent 的阻塞

windows下,GUI线程通常调用GetMessage来等待消息,当另一个线程使用 PoseMessage 将消息放入队列时,则GUI 线程将返回 GetMessage(退出阻塞). 有谁可以告诉我,当我在XWindows下使用XNextEvent来等待事件,如何“唤醒"另一个线程中的 GUI 线程.有没有一些像 PoseMessage 这样的 API 我可以使用吗?. 解决方案 ..
发布时间:2021-12-13 10:44:01 其他开发

获取最顶层窗口的 pid 和详细信息

有谁知道如何获取顶部活动窗口的PID,然后如何使用PID获取窗口的属性?我的意思是进程名称、程序名称等属性 我在 Linux (Ubuntu 9.10) 下使用 Qt. 解决方案 linux 中有一个命令调用 xprop,它是一个用于在 X 服务器中显示窗口属性的实用程序.在 linux 中 xprop -root 为您提供根窗口属性以及其他活动程序.然后您可以使用以下命令获取活动窗 ..
发布时间:2021-12-09 16:59:19 服务器开发

如何有效地确定多边形是凸面、非凸面还是复杂面?

来自 XFillPolygon: 如果shape是Complex,路径可能会自相交.请注意,路径中的连续重合点不被视为自相交. 如果shape是Convex,对于多边形内的每一对点,连接它们的线段不与路径相交.如果客户端知道,指定 Convex 可以提高性能.如果为非凸的路径指定 Convex,则图形结果未定义. 如果shape是Nonconvex,则路径不自相交,但形状不是完全 ..
发布时间:2021-12-06 19:40:59 其他开发

XLib 窗口自动对齐性能

在基于 XLib 的应用程序中,我需要在父窗口之后调整子窗口的大小.(例如为了让子窗口占据父窗口的整个客户区) 我正在处理父窗口的 ConfigureNotify 事件并在需要时调整子窗口的大小. 通常它可以正常工作.但是在调整父窗口大小(例如,当用户拖动边缘调整窗口大小时)和应用程序接收到的事件之间存在延迟. 由于此延迟,子窗口仅在用户停止移动边缘后一段时间才会采用其正确大小. ..
发布时间:2021-09-29 19:25:41 其他开发

您可以使用 struct XrmOptionDescRec 数组将非 Motif 相关参数传递给应用程序吗?

我已经看到如何通过 XrmOptionDescRec 结构数组配置 xrm 资源名称.一个例子可以在this问题中找到.> 我想知道我是否也可以通过这种方式传递非 X11 相关参数. 特别是,如果我想将命名管道的名称传递给应用程序,以便 X11 应用程序打开该特定命名管道, 是否可以选择使用 XrmOptionDescRec 结构数组? 我可以设置和检索任意资源名称吗? 如果是这 ..
发布时间:2021-09-29 19:25:38 其他开发

在 Xlib 中反转区域的颜色

我想知道是否可以使用 Xlib 反转区域的颜色.区域可以是由两个坐标(x1,y1 到x2,y2)定义的矩形区域.下面的代码是脚本的最新修改版本,用于根据 JvO 的建议反转活动窗口的一部分 导入 Xlib从 Xlib 导入 X、显示、Xutild = display.Display()屏幕 = d.screen()背景尺寸 = 20act_win = d.get_input_focus().fo ..
发布时间:2021-09-29 19:25:20 其他开发

使用窗口系统 (GLX) 交换缓冲区和清除返回

在后台缓冲区和前台缓冲区之间交换时,后台缓冲区中的内容变得不确定.我想使用“窗口系统"来定义它,例如 GLX、EGL、WGL.使用诸如 OpenGL (glClear) 之类的“本机"渲染器是我的备用计划,别费心提了.它是备份的原因是因为我不想弄乱本机渲染上下文.对于这个问题,我将坚持使用 X/GLX,但如果您想描述如何在其他环境中执行此操作,请继续. 来自 Xlib 文档(http://w ..
发布时间:2021-09-29 19:25:11 C/C++开发

Qt 与 XComposite 问题

我正在尝试编写一个简单的程序,它将所有窗口重定向到后台缓冲区(就像复合管理器那样),然后将它们写入像素图并保存到磁盘.但是我收到了这个错误: (.text.startup+0x5e):-1: 错误:未定义对“XCompositeRedirectSubwindows"的引用(.text.startup+0x171):-1: 错误:未定义对“XCompositeNameWindowPixmap"的引 ..
发布时间:2021-09-29 19:25:08 服务器开发

Xlib:如何向窗口管理器询问最大化的窗口大小?

我希望我的程序窗口尽可能大,而不与窗口管理器的各种小窗口重叠,例如寻呼机.在创建窗口之前,有什么方法可以询问 wm 最大化的窗口大小是多少? 解决方案 _NET_WORKAREA 根窗口的属性可能最接近匹配.但是,在多头系统上,它将为您提供所有显示器上的组合工作区. 如果这就是您想要的,那很好(但请参阅 此处关于使窗口跨越多个显示器).如果您想在单个监视器上最大化,那么就会出现问题, ..
发布时间:2021-09-29 19:25:02 其他开发

X11:XGrabPointer 会阻止其他应用程序发生任何鼠标事件吗?

使用以下代码: XGrabPointer(d, root, False, ButtonPressMask, GrabModeAsync, GrabModeAsync, 无,无,当前时间); 我只是用按钮按下事件指定,但在运行其他应用程序时无法获得任何其他鼠标事件,例如鼠标移动.这是这个功能设计的吗?或者我理解错误的东西.像参数owner_events,看不懂. 如果 owner_even ..
发布时间:2021-09-29 19:24:42 其他开发

死键的问题(急性,分音符等)c ++

我目前正在使用 X11 库为 linux 编写自己的虚拟键盘,但我找不到模拟任何死键的 KeyPress 事件的方法.例如,我曾尝试使用指定的宏(即 XK_aacute)编写“á",但没有任何反应.后来我尝试发送 XK_acute(重音宏),然后发送 XK_a,再次,没有任何反应:( 在 KDE 虚拟键盘“Kvkbd"中可以做到这一点,所以我下载了源代码,但它只支持英文键盘布局 这是我 ..
发布时间:2021-09-29 19:24:39 C/C++开发

XLib 锁定鼠标位置(鼠标环绕)

我正在尝试在 X11 中为 OpenGL 游戏/内容创建一个鼠标包装.我试图采取的方法是隐藏光标(我可以做得很好),将鼠标位置锁定在窗口的中心,然后使用鼠标增量位置来检测移动.但是,我找不到任何方法来锁定鼠标位置,然后在每一帧中将其移回中心. 在 Windows 中,这可以使用 ClipCursor() 完成,而在 OSX 中,鼠标环绕可以使用 CGWarpMouseCursorPositi ..
发布时间:2021-09-29 19:24:26 其他开发

Xlib XGetWindowProperty 返回零项

我在读取某些 XWindow ICCCM 属性时遇到问题. 问题实际上是当我尝试读取 _NET_WM_STATUS 属性时.我正在使用的功能是: int get_property_value(Display* display, Window window,char *propname, long max_length,unsigned long *nitems_return, unsign ..
发布时间:2021-09-29 19:24:23 其他开发