【Qt】QApplication::restoreOverrideCursor():恢复鼠标光标到原始状态的用法解析

restoreOverrideCursor() 是 Qt 中 QApplication 类提供的一个静态函数,用来恢复鼠标光标到应用程序之前设置的状态。

在 Qt 中,你可以使用 QApplication::setOverrideCursor() 来临时更改鼠标光标的外观。例如,当执行一些耗时操作时,你可能想将鼠标光标更改为一个等待图标(比如沙漏或旋转的圆圈),以提示用户程序正在处理。

在调用 setOverrideCursor() 之后,光标将会一直保持在指定状态,直到调用 restoreOverrideCursor()。这个函数的调用会恢复光标到调用 setOverrideCursor() 之前的状态。例如:

cpp 复制代码
#include <QApplication>
#include <QCursor>
#include <QThread>

// 假设在某个函数中
void longOperation() {
    // 设置鼠标光标为等待状态
    QApplication::setOverrideCursor(Qt::WaitCursor);
    
    // 模拟一个耗时操作
    QThread::sleep(3);

    // 恢复鼠标光标
    QApplication::restoreOverrideCursor();
}

注意

  • restoreOverrideCursor() 只会移除最近的覆盖光标,如果你在多次调用 setOverrideCursor() 之后调用 restoreOverrideCursor(),Qt 会逐一恢复到之前的光标。
  • 如果连续多次调用 restoreOverrideCursor() 超过 setOverrideCursor() 的次数,将不会产生错误,但光标不会再被进一步恢复。
相关推荐
222you23 分钟前
Java线程的三种创建方式
java·开发语言
云上漫步者29 分钟前
深度实战:Rust交叉编译适配OpenHarmony PC——unicode_width完整适配案例
开发语言·后端·rust·harmonyos
漫漫求33 分钟前
Java内存模型【JMM】、JVM内存模型
java·开发语言·jvm
田姐姐tmner38 分钟前
Python 全面语法指南
开发语言·python
月上林梢44 分钟前
QT圆形加载进度条
数据库·c++·qt·进度条
white-persist1 小时前
【攻防世界】reverse | simple-check-100 详细题解 WP
c语言·开发语言·汇编·数据结构·c++·python·算法
wuguan_1 小时前
C#中的静态成员、常量和只读变量
开发语言·c#
张人玉1 小时前
C# 与西门子 PLC 通信:地址相关核心知识点
开发语言·microsoft·c#·plc
Gomiko1 小时前
JavaScript DOM 原生部分(五):事件绑定
开发语言·前端·javascript
lly2024061 小时前
Redis 发布订阅
开发语言