Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/142.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ c++;X11全局更改游标_C++_Linux_Cursor_Mouse_X11 - Fatal编程技术网

C++ c++;X11全局更改游标

C++ c++;X11全局更改游标,c++,linux,cursor,mouse,x11,C++,Linux,Cursor,Mouse,X11,我正在编写一个基于外部硬件(Leap Motion Controller)输入的Linux鼠标仿真程序。为了进行正确的操作,我想更改光标的形状,以便向用户传达与其光标操作相关的状态信息。我目前正在编写一个用户空间程序来处理这个问题。鼠标移动和鼠标点击是使用XTest库处理的,但是现在我找不到改变光标形状的方法 使用XDefineCursor()我已经能够将光标更改为程序拥有的窗口上的自定义形状,但我需要在完整的图形环境中使用它,因为这个程序将保持不变 大部分时间都隐藏在背景中 如果可能的话,我也

我正在编写一个基于外部硬件(Leap Motion Controller)输入的Linux鼠标仿真程序。为了进行正确的操作,我想更改光标的形状,以便向用户传达与其光标操作相关的状态信息。我目前正在编写一个用户空间程序来处理这个问题。鼠标移动和鼠标点击是使用XTest库处理的,但是现在我找不到改变光标形状的方法

使用XDefineCursor()我已经能够将光标更改为程序拥有的窗口上的自定义形状,但我需要在完整的图形环境中使用它,因为这个程序将保持不变 大部分时间都隐藏在背景中

如果可能的话,我也不想编写设备驱动程序,现在就呆在用户空间里。另外,我希望不必更改显示管理器(即Unity或LXDE)的代码

编辑:

硬件是跳跃运动控制器。我需要向用户显示它们是否仍在传感器的范围内或范围外

通过将图形添加到任何试图设置光标的窗口(选择CursorInput/GetCursorImage/CursorNotify event),您可以观察光标的变化,然后在每次光标变化时修改光标。

您有什么样的外部硬件?具体点!它看起来很有前途,我只是找不到太多关于它的文档。我可以给你举一个简单的例子,用c或javascript和@AndreySidorov一起使用:我想做一些类似于OP的事情,并讨论是否去挖掘KDE来弄清楚它是如何做反弹光标的事情的(当一个应用程序启动时),或者解决你建议的方法(KDE也在做同样的事情吗?)。我忍不住想知道跟踪光标变化是否会引入比赛条件并引发小故障(WM/app光标变化->X11赢得更新比赛并刷新显示->光标猴子补丁->X11更新=>未打补丁的光标显示一帧或两帧).我还记得KDE的反弹让旧电脑上的光标严重闪烁-我能解决这个问题吗?