C在多屏幕系统中的鼠标光标位置

我怎样才能将鼠标光标放置在Linux下多个屏幕下的C窗口中? 我有2台显示器(不同的分辨率)插入一个单一的Linux电脑。 我用“:0.1”来寻址第二台显示器。 我运行应用程序从监视器1保持鼠标在监视器1以及…结果鼠标移动,但不跳在监视器2.如果我手动将鼠标光标在监视器2上运行应用程序从监视器1 ,鼠标移动。

我需要一种方法来在显示器之间移动光标。

#include "Xlib.h" int main() { int delta_x = 5, delta_y = 5; Display *display = XOpenDisplay(":0.1"); // move pointer relative to current position XWarpPointer(display, None, None, 0, 0, 0, 0, delta_x, delta_y); XCloseDisplay(display); } 

您需要传递您希望指针移动到的显示的根窗口的句柄:

  root = RootWindow(display, screennumber); XWarpPointer(display, None, root, 0, 0, 0, 0, x, y); 

这里有一个完整的工作C例子:

http://www.ishiboo.com/~danny/Projects/xwarppointer/

这可能是有用的:)