如何在Qt C++中更改光标
How to change the cursor in Qt C++
如何将光标更改为本地机器中的图像?我遵循本教程进行代码参考:http://www.newthinktank.com/2018/07/qt-tutorial-5-paint-app/
在你的.qrc文件中试试这个:
<RCC>
<qresource prefix="/">
<file>cursors/my_cursor.png</file>
</qresource>
</RCC>
然后这样编程:
QPixmap p = QPixmap(":my_cursor");
QCursor c = QCursor(p, 0, 0);
setCursor(c);
我认为你应该使用类QCursor,一旦鼠标进入图像,你就可以使用函数setShape((修改它的形状。
如文件所示:
要将光标与小部件关联,请使用QWidget::setCursor((。到将光标与所有小部件关联(通常为时间(,使用QGuiApplication::setOverrideCursor((。
要设置光标形状,请使用QCursor::setShape((或使用QCursor构造函数,它将形状作为参数,或者您可以使用Qt::CursorShape枚举中定义的预定义游标。
您可以在稳定的基础上临时更改光标。
稳定方式意味着光标按原样设置。使用QWidget::setCursor()
。注意,应用此项的对象必须是QWidget。
临时方式覆盖永久光标当你这样做的时候QGuiApplication::setOverrideCursor(QCursor(/* your cursor here */));
将此光标添加到堆栈的顶部。如果放置了几个光标,同时弹出它们,我们会以相反的顺序得到它们。要弹出光标,我们需要:QGuiApplication::restoreOverrideCursor();
仅仅一次改变或来回摆动并不重要,但如果光标有可能堆积,这将很重要。
相关文章:
- 如何在Qt C++中更改光标
- Win32 API 控制台光标在 WriteConsole 后不移动
- 在 macOS 中使用 C/C++ 设置鼠标光标图像
- 如何更改输出的位置或光标在输出处,以便在"Code Blocks"中C++
- 使用 C++将文本光标移动到屏幕中不可见的行
- 在 C# 中更改鼠标光标图标
- ASCII 旋转光标 (TUI) 动画出现问题
- 将鼠标悬停在图片框上时,如何显示带有 x-y 坐标的十字准线光标?
- 将光标单独移动到当前位置
- 如何获得鼠标光标连接时按下左键单击和在C++中释放左键单击时?
- 由于选项卡顺序的原因,鼠标光标总是得到错误的hwnd-MFC应用程序
- 如何在C++中模拟鼠标光标的移动
- 如何确定鼠标光标所在的控制台字符
- 如何在C++中使用光标定位
- 如何在QML中设置鼠标光标位置
- 如果传递到QGraphicsRectItem Qt c++,请更改光标
- 从 QML 更好地控制文本光标
- Windows 函数"GetCursorInfo"返回成功,但光标的句柄为 NULL
- 避免在光标移到子窗口上时WM_MOUSELEAVE
- 我试图将光标平滑地移动到随机点