我正在创建一个在多个 xsession 中使用多个游标(指针)的系统。我的电脑有多个视频卡用于控制不同的显示器。我想在每个屏幕上有一个不同的光标并控制每个屏幕。每个监视器都是一个不同的 session 。
我开始使用 C 中的 xlib 库来控制我使用以下命令的单个光标:
XWarpPointer(display,None,window,0,0,0,0,x,y);
这对一个光标非常有效。然后我在终端中使用 xinput 创建了第二个光标:
>>xinput create-master second
然后我在屏幕上有两个光标。我可以使用重新连接命令用单独的鼠标去控制每个鼠标:
>>xinput reattach MOUSEID POINTERID
最后一步是使用 xlib 分别控制每个游标。当我使用 xWarpPointer 命令时,它只是四处移动原始光标,我找不到指定要控制的光标的方法。我也一直找不到设置默认指针的方法。您可以在终端中使用“xinput list”查看所有指针的列表。有谁知道我该怎么做
感谢您的帮助!
最佳答案
你需要使用来自XInput2扩展的XIWarpPointer
请求,它以deviceid为参数
Bool XIWarpPointer(
Display* display,
int deviceid,
Window src_win,
Window dst_win,
double src_x,
double src_y,
unsigned int src_width,
unsigned int src_height,
double dst_x,
double dst_y
);
关于xlib - 在 ubuntu/linux 中使用 Xlib 或 xinput 控制多个指针,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13714831/