QT常用控件2.0,windowOpacity窗口透明度,Cursor光标设置

@bit::Shadow
✧(≖ ◡ ≖✿

目录

透明度windowOpacity

*浮点数话题回顾

E(阶码)存储的特殊性

E的中间数

光标设置cursor()

代码方式

widget光标设置

全局光标设置setOverrideCursor()

个性光标自定义

效果图


透明度windowOpacity

typedef double qreal;

0.0完全透明1.0完全不透明。

|------------------------------------|----------|
| qreal windowOpacity() const | 获取窗口不透明度 |
| void setWindowOpacity(qreal level) | 设置窗口不透明度 |

cpp 复制代码
void Widget::on_pushButton_Add_clicked()
{
    qreal qr = windowOpacity();
    qr += 0.1;
    setWindowOpacity(qr);
}

void Widget::on_pushButton_Sub_clicked()
{
    qreal qr = windowOpacity();
    if(qr > 0.2)
        qr -= 0.1;
    setWindowOpacity(qr);
}

演示视频:

Window透明度

注意:透明度小于 0.001按钮全部失效。

*浮点数话题回顾

IEEE标准(754标准):

十进制5.5------二进制101.1

照应 V = (-1)^S x M x 2^E

S(符号位)=0

M(尾数)=0.011 // 忽略"1"默认转换时E的真实取值范围是 1 <= E < 2 。

E(阶码)=-1

存储结构(float):

E(阶码)存储的特殊性

由于E存在负值,为解决二进制编码的局限采用中间数作为值的修正。float下是127 double下是1023。

-128怎么存储?

E的中间数

|------|--------|-----------|
| E | 中间数处理后 | 存储 |
| 0 | 127 | |
| 127 | 254 | 1111 1110 |
| 128? | 255? | 无穷大 |
| -126 | 1 | 0111 1111 |
| -127 | 0 | 0000 0000 |

doubleSME为:1 11 52

光标设置cursor()

cursor()返回QCursor对象。

代码方式

widget光标设置

cpp 复制代码
void QWidget::setCursor(const QCursor &cursor);

全局光标设置setOverrideCursor()

cpp 复制代码
void QGuiApplication::setOverrideCursor(const QCursor &cursor);
cpp 复制代码
Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);
    //对象
    QCursor cursor(Qt::WaitCursor);
    //设置
    this->setCursor(cursor);
}

效果图:(作用范围是client区

个性光标自定义

🔗具体图片的导入方式见上篇文章🔗

cpp 复制代码
Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);
    QPixmap pixmap(":/Avatar.png");
    //Q--Qt  pix map-像素图也是常用的自定义图片类型
    //缩放
    pixmap = pixmap.scaled(200,200);
    this->setCursor(pixmap);
}
效果图

鼠标就变成了所引用的图片,点击位置默认以左上角为标准(可设置)。

感谢支持,持续更新

欢迎关注

相关推荐
apocelipes20 小时前
常用编程语言和库的正则表达式性能对比
c语言·c++·python·性能优化·golang·开发工具和环境
郝学胜_神的一滴2 天前
CMake 034:生成器表达式:解耦构建时序、精简分支逻辑的终极利器
c++·cmake
见过夏天3 天前
C++ 基础入门完全指南
c++
用户805533698034 天前
不止三件套:QObject 属性系统全关键字与运行时反射!
c++·qt
xcyxiner4 天前
DicomViewer (vcpkg Windows和ubuntu编译)7
qt
BadBadBad__AK5 天前
线段树维护区间 k 次方和
c++·数学·算法·stl
卷无止境5 天前
Eigen 库如何借助 OpenMP 加速计算
c++·后端
卷无止境5 天前
OpenMPI、MPICH 与 OpenMP:关系、核心概念与架构全解
c++·后端
郝学胜_神的一滴6 天前
CMake 30:循环语法全解|foreach_while双循环精讲、迭代技巧与实战避坑指南
c++·cmake
卷无止境8 天前
C++ 的Eigen 库全解析
c++