一尘不染

如何在Linux上的C中设置鼠标光标的位置?

linux

在Linux下如何使用C程序在X窗口中设置 鼠标 光标的位置?谢谢:)(就像WIN中的setcursorpos()一样)

编辑:我尝试过此代码,但不起作用:

#include <curses.h>

main(){
 move(100, 100);
 refresh();
}

阅读 1020

收藏
2020-06-07

共1个答案

一尘不染

12.4- 移动指针

尽管通常 应将 指针的移动留给最终用户控制,但有时有必要在程序控制下将指针移动到新位置。

要将指针移动到窗口中的任意点,请使用XWarpPointer()


例:

Display *dpy;
Window root_window;

dpy = XOpenDisplay(0);
root_window = XRootWindow(dpy, 0);
XSelectInput(dpy, root_window, KeyReleaseMask);
XWarpPointer(dpy, None, root_window, 0, 0, 0, 0, 100, 100);
XFlush(dpy); // Flushes the output buffer, therefore updates the cursor's position. Thanks to Achernar.
2020-06-07