这篇具有很好参考价值的文章主要介绍了Qt 设置鼠标形状。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。
设置窗口鼠标形状 void QWindow::setCursor(const QCursor &cursor)
鼠标光标位于此窗口上时将采用此形状,除非设置了覆盖光标。Qt预定义了一系列有用的鼠标形状。列表如下:
setCursor(const QCursor &cursor)使用:
this->setCursor(Qt::CrossCursor); // this也可改为其他控件
如果未设置光标形状,或者在调用 unsetCursor() 之后,则使用父窗口的光标形状。默认情况下,光标形状为 Qt::ArrowCursor ,即箭头光标。
如果光标离开窗口,即使鼠标被抓住,某些基础窗口实现也会重置光标。如果要为所有窗口设置光标,即使在窗口外,也可以考虑QGuiApplication::setOverrideCursor()。
[static] void QGuiApplication::setOverrideCursor(const QCursor &cursor)
将应用程序覆盖光标设置为光标。应用程序重写游标用于向用户显示应用程序处于特殊状态,例如在可能需要一些时间的操作期间。此光标将显示在应用程序的所有小部件中,直到调用 restoreOverrideCursor() 或其他 setOverrideCursor()。应用程序光标存储在内部堆栈上。setOverrideCursor() 将光标推送到堆栈上,而 restoreOverrideCursor() 将活动光标从堆栈中弹出。changeOverrideCursor()更改当前活动的应用程序覆盖光标。每个 setOverrideCursor() 最终必须跟上相应的 restoreOverrideCursor(),否则堆栈将永远不会被清空。
QApplication::setOverrideCursor(QCursor(Qt::WaitCursor));
calculateHugeMandelbrot(); // lunch time...
QApplication::restoreOverrideCursor();
[static] void QGuiApplication::restoreOverrideCursor()
撤消最后一个 setOverrideCursor()。
如果 setOverrideCursor() 被调用了两次,调用 restoreOverrideCursor() 将激活第一个光标集。再次调用此函数将恢复原始小部件的光标。
[static] QCursor *QGuiApplication::overrideCursor()
返回活动应用程序覆盖光标。如果未定义应用程序光标(即内部光标堆栈为空),则此函数返回 0。
[static] void QGuiApplication::changeOverrideCursor(const QCursor &cursor)
改变当前活动应用程序覆盖光标为指定光标。如果setOverrideCursor()没有被调用,该函数没有效果。
后续公众号会发布系列教程,更多内容请关注公众号:程序猿学习日记文章来源地址https://www.toymoban.com/news/detail-635916.html
文章来源:https://www.toymoban.com/news/detail-635916.html
到了这里,关于Qt 设置鼠标形状的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!