如何使用 libvncclient 显示光标形状更改
How to show cursor shape changes with libvncclient?
我正在使用libvncclient(libvncserver的一部分(和Qt开发一个多查看器VNC客户端。 这有点挑战性,但我终于让应用程序运行良好,除了它不会显示来自服务器的光标形状变化。 我想克服这个问题,这样我就可以与全世界分享这个软件项目,就像我与大多数其他项目一样。
我已经尝试过这样做来使libvnc客户端显示光标形状更改:
client->appData.useRemoteCursor = false;
这不会显示帧缓冲区中的光标更改。 接下来,我尝试自己处理光标更改,使用:
client->appData.useRemoteCursor = true;
client->GotCursorShape = got_cursor_shape_change;
虽然当服务器上发生光标形状更改时会调用got_cursor_shape_change
回调,但光标图像的缓冲区 rcSource
和光标掩码的缓冲区 rcMask
不是有效的图像。
我已经在互联网上搜索了有关此问题的帮助,但除了官方文档之外,资源非常少。 我就此问题联系了开发人员,但他们说我尝试过的方法应该有效。
编辑:此外,其他查看器,例如TightVNC,TigerVNC,gtk-vnc等都显示来自服务器的光标形状更改,因此我知道它正在正确发送更改。
有没有人知道我应该尝试什么?
提前谢谢你。
此问题已解决。
问题是在我正在测试的远程计算机上安装了非常旧版本的TightVNC(2.0.x(。 更新(到 2.7.x(后,远程计算机的光标可见,并且形状更改发生在我的查看器中。 以下是有效的方法:
client->appData.useRemoteCursor = false;
相关文章:
- 在 macOS 中使用 C/C++ 设置鼠标光标图像
- 使用 C++将文本光标移动到屏幕中不可见的行
- 如何在C++中使用光标定位
- 使用 ICONINFO 创建光标
- QT4.8嵌入.使用QCursor :: SetPos()调整鼠标输入会导致一个抽搐的光标
- 使用代码移动光标并打开文件夹
- 如何使用 Gtkmm 获取光标位置
- 使用 Serial.Read 输入在 Arduino 上设置 LCD 光标
- 如何使用mouseevent在windows登录屏幕中移动鼠标光标
- 从文件读取时如何使用运算符后将光标移动到下一行">>"
- 使用 LLVM 的 libc++ 时,__1 符号从何而来?
- 使用step-overdebugging上下跳转光标
- 在std::cout之后使用std::cin时,换行符从何而来
- 如何在新的 C++ Mongo 驱动程序中使用光标
- 如何在 C++ 中使用更改光标输入和输出二进制文件
- 为什么以及在何处在C++中使用引用和指针
- 使用ncurses c++(Linux)将光标移动到屏幕上的特定点
- c++:使用多线程在控制台中移动光标
- 如何使用 libvncclient 显示光标形状更改
- OpenGL使用鼠标点击与鼠标光标移动的回调时出现未处理的异常