【发布时间】:2012-02-27 02:32:51
【问题描述】:
我正在编写一个小程序来使用 Xlib 控制鼠标光标。我需要在多显示器配置上任意设置它的位置。操作系统为linux,开启xinerama模式。
使用下面的代码,指针不能按我预期的那样工作。
xdisplay1 = XOpenDisplay(NULL);
root = DefaultRootWindow(xdisplay1);
XWarpPointer(xdisplay1,None,root,0,0,0,x,y);
XFlush(xdisplay1);
事件通常不会刷新,除非我“手动摇动”鼠标设备。此外,它只有在我不变形到另一台显示器时才有效。发生这种情况时,指针会卡在相应的翘曲边缘。
这种行为让我认为问题与多显示器配置有关。有谁知道如何快速解决?
谢谢!
【问题讨论】:
-
鼠标光标没有“视觉上”更新,但现在我确定它正在移动。使用 GLUT 成功捕获了鼠标事件。但是,最好知道这种奇怪行为的原因。谢谢!
-
您找到解决方案了吗?我也有同样的问题...
标签: events mouse xlib xserver multiscreen