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

我怎么能在Linux下用多屏幕在C中的X窗口中设置鼠标光标? 我有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/

这可能是有用的:)

链接地址: http://www.djcxy.com/p/49217.html

上一篇: Mouse cursor position in C on multi screen system

下一篇: spline curve in Java