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);
}
效果图

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

感谢支持,持续更新

欢迎关注

相关推荐
Scott9999HH3 小时前
【IIoT流量实战】蒸汽管道阀门全关却仍有流量?用 Python 实现涡街信号 FFT 频谱分析与温压全补偿积算网关,深度拆解靠谱的涡街流量计厂家硬核技术标准
开发语言·python
2401_841495644 小时前
【操作系统】进程同步与互斥实验报告
c++·算法·操作系统·进程·并发·同步·互斥
fqbqrr4 小时前
2607C++,soui与安卓
c++·soui
码智社4 小时前
AES加密原理详解及Java实现加解密实战
java·开发语言
AI云海4 小时前
python 列表、元组、集合和字典
开发语言·python
萧瑟余晖5 小时前
JDK 26 新特性详解
java·开发语言
马优晨6 小时前
Freemarker 完整讲解(后端 Java 模板引擎)
java·开发语言·freemarker·freemarker 完整讲解·freemarker模板引擎
fqbqrr8 小时前
2607C++,使用微软detours勾挂工具
c++
人邮异步社区8 小时前
怎么把C语言学到精通?
c语言·开发语言
心平气和量大福大8 小时前
C#-WPF-控件-TextBox 数据绑定
开发语言·c#·wpf