【Qt】QWidget的windowOpacity属性 cursor属性 font属性

news2024/11/15 5:10:35

一.windowOpacity属性

1.概念:

windowOpacity属性是Qt中QWindow类的一个属性。它用于设置窗口的不透明度(透明度)。

窗口的不透明度值范围是0.0到1.0之间,其中0.0表示完全透明,1.0表示完全不透明。默认情况下,窗口的不透明度为1.0,即完全不透明。

2.API

API说明
windowOpacity()获取到控件的不透明数值. 返回 float, 取值为 0.0 -> 1.0 其中 0.0 表⽰全透明, 1.0 表⽰完全不透明.
setWindowOpacity(float n)

设置控件的不透明数值.

3.代码示例

eg:调整窗口透明度

(1)设置两个按钮,一个增加不透明度,一个减少不透明度

(2)编写 wdiget.cpp, 编写两个按钮的 slot 函数

UP用于增加不透明度

down用于减小不透明度
  

点击down减少不透明度,即窗口越来越透明

运行结果:

二、cursor属性

1.概念:


在Qt中,QWidget类和QApplication类都提供了一个cursor属性,用于设置和获取窗口或应用程序的鼠标指针样式。该属性可用于控制鼠标在窗口上的显示效果。

常见的鼠标指针样式包括箭头、手指、等待、文本输入等。通过设置cursor属性,可以更改鼠标指针的样式

2. API

API说明
cursor()获取到当前 widget 的 cursor 属性, 返回 QCursor 对象.当⿏标悬停在该 widget 上时, 就会显⽰出对应的形状.
setCursor(const QCursor& cursor)设置该 widget 光标的形状. 仅在⿏标停留在该 widget 上时⽣效.
QGuiApplication::setOverrideCursor(const QCursor&cursor)设置全局光标的形状. 对整个程序中的所有 widget 都会⽣效. 覆盖上⾯的 setCursor 设置的内容.

3.代码示例

eg1:在designer中修改鼠标

(1)创建一个按钮

(2)在右侧属性编辑区修改 cursor 属性为上箭头

运行程序,将光标放到按钮上,光标显示为上箭头

eg2:通过代码设置按钮的光标

(1)编写 widget.cpp

运行程序:

注:ctrl+左键 点击 Qt::WaitCursor,转到源代码

枚举的这些变量,即是qt内置的鼠标样式,

eg3:使用图片自定义光标

(1)创建qrc文件,加载图片

(2)编写代码

运行程序:

三、font属性


1. 概念:


在Qt中,font属性用于设置控件的字体样式。每个Qt控件都有一个font属性,用于设置控件的字体。

在Qt中,可以使用以下方法来设置控件的字体:

(1)使用控件自己的setFont方法来设置字体,例如:这将将按钮的字体设置为Arial字体,大小为12。

QPushButton* button = new QPushButton("Button");
button->setFont(QFont("Arial", 12));

(2)使用样式表(QSS)来设置字体,例如:这将将所有QPushButton控件的字体设置为Arial字体,大小为12.

QPushButton {
    font-family: Arial;
    font-size: 12px;
}

2.API

API说明
font()获取当前 widget 的字体信息. 返回 QFont 对象.
setFont(const QFont& font)设置当前 widget 的字体信息

3.QFont属性

属性说明
family字体家族. ⽐如 “楷体”, “宋体”, “微软雅⿊” 等.
pointSize字体⼤⼩
weight字体粗细. 以数值⽅式表⽰粗细程度取值范围为 [0, 99], 数值越⼤, 越粗.
bold是否加粗. 设置为 true, 相当于 weight 为 75. 设置为 false 相当于 weight 为50
italic是否倾斜
underline是否带有下划线
strikeOut是否带有删除线

4.代码示例

eg1:在designer上编辑控件的font属性

(1)在ui界面创建一个label

(2)在右侧编辑区设置font属性

在这⾥调整上述属性,可以实时的看到⽂字的变化

运行程序:

eg2:使用代码设置font属性

1)在界⾯中创建 label, objectName 使⽤默认的 label 即可.

2)修改 widget.cpp

运行:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1964024.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Python科研数据可视化教程

原文链接:Python科研数据可视化教程https://mp.weixin.qq.com/s?__bizMzUzNTczMDMxMg&mid2247609609&idx4&sn8629ee10544f43b46993694d929843d0&chksmfa826ceecdf5e5f8ca4fbc72104c3488d5c53c0735f41f393c9a494aceddf2b93c8eb5622813&token214…

部署一个nodejs项目+配置server

1.jdk环境 tomcat服务器需要jdk环境 版本对应 ​ tomcat9>jdk1.8 ​ tomcat10>jdk17 配置系统变量JAVA_HOME 2.nginx平滑升级,不停服务升级nginx服务器,1.26.1升级到1.27.0 3.负载均衡,使用nginx管理后端服务器,…

基础复习(IO流)

1.File类 创建对象 File f1 new File("D:/resource/ab.txt"); File f2 new File("D:\\resource\\abc.txt"); 基础方法 创建与删除方法 1、public boolean createNewFile():创建一个新文件(文件内容为空),…

区块链技术在智能城市中的创新应用探索

随着全球城市化进程的加速和信息技术的快速发展,智能城市成为了未来城市发展的重要方向。在智能城市建设中,区块链技术作为一种去中心化、安全和透明的分布式账本技术,正逐渐展现出其在优化城市管理、提升公共服务和增强城市安全性方面的潜力…

1.6 树和二叉树

1.树的基本概念 2.二叉树的概念和性质 2.1.二叉树性质 1)结点个数 2)第i层,最多结点个数 3)者深度为k,前k层最多结点个数 4)叶子结点个数 2.2.完全二叉树性质 1)结点个数 2)第i层最多节…

云计算实训18——基于域名配置虚拟主机、基于ip配置虚拟主机、基于端口配置虚拟主机、配置samba、部署nfs服务器

一、配置文件的结构 1.首先查看配置文件 [rootstatic-server ~]# vim /usr/local/nginx/conf/nginx.conf 使用grep指令查看配置文件,同时不看空行不看注释 [rootstatic-server ~]# grep -Ev "#|^$" /usr/local/nginx/conf/nginx.conf 2.备份文件 将原有…

ComfyUI插件:ComfyUI Impact 节点(四)

前言: 学习ComfyUI是一场持久战,而 ComfyUI Impact 是一个庞大的模块节点库,内置许多非常实用且强大的功能节点 ,例如检测器、细节强化器、预览桥、通配符、Hook、图片发送器、图片接收器等等。通过这些节点的组合运用&#xff0…

mediawiki 启用 Minerva 皮肤后报错 哎呀!您在$wgDefaultSkin定义的wiki默认皮肤minervaneue不可用。

嗨喽大家好啊我是 kx 这是个常见的问题,废话不多说直接上解决方法 Minerva 皮肤在他的官网有说明怎么办 连接放到下面: https://www.mediawiki.org/wiki/Skin:Minerva_Neue 懒得看的话我把官网的话复制下来了,直接看就行了: 安…

JAVA通过debezium实时采集mysql数据

前期准备 需要提前安装mysql并且开启binlog,需要准备kafka和zookeeper环境 示例采用debezium1.9.0版本 Maven配置 <version.debezium>1.9.0.Final</version.debezium> <dependency> <groupId>io.debezium</groupId> <artifactId>debe…

【大模型系列篇】本地问答系统-部署Ollama、Open WebUI

部署本地大模型&#xff0c;结合Ollama、Open WebUI以及本地RAG&#xff08;Retrieval-Augmented Generation&#xff09;可以为用户提供一个强大的本地知识库和交互式对话系统。以下是详细的部署步骤和功能介绍&#xff1a; 一、部署Ollama 访问Ollama官网&#xff1a;首先&…

【3】Blazor链接数据库

【3】Blazor链接数据 一、引入Nuget包二、添加链接字符串三、创建DbContext四、注入SqlServer数据库五、执行数据库迁移六、创建用户信息页面七、结果展示 一、引入Nuget包 Microsoft.EntityFrameworkCore Microsoft.EntityFrameworkCore.SqlServer Microsoft.EntityFramework…

Kafka的搭建及使用

Kafka搭建及使用 Kafka搭建 1、上传解压修改环境变量 # 解压 tar -zxvf kafka_2.11-1.0.0.tgz -C /usr/local/soft mv kafka_2.11-1.0.0 kafka-1.0.0tar -xvf 是一个在Unix和类Unix操作系统&#xff08;如Linux和macOS&#xff09;中用于解压缩或解包.tar文件的命令。 tar -…

java调用WebService接口

案例&#xff1a; 接口&#xff1a; http://xxxxx:8080/GetSPService.asmx 调用方法&#xff1a;GetSPByStnCodeToJsonStr 参数1&#xff1a;begin 开始时间 格式 yyyymmdd hh:mi &#xff08;日和小时之间有空格&#xff09; 例如&#xff1a;20230718 06:00 参数2: end …

IO模型思维导图

背景 &#xff1a; 并发服务器模型可以在同一时刻响应多个用户请求 多路复用IO&#xff1a; 4.多路复用IO 1.select 2.poll 3.epoll 1.select 缺点: 1.select监听文件描述符最大个数为1024 &#xff08;数组&#xff…

【CN】Argo 持续集成和交付(二)

7.25.通知 概述 Argo CD 通知持续监控 Argo CD 应用程序&#xff0c;并提供一种灵活的方式来通知用户应用程序状态的重要变化。使用灵活的触发器和模板机制&#xff0c;可以配置何时发送通知以及通知内容。Argo CD 通知包含有用的触发器和模板目录。因此&#xff0c;可以直接…

什么是住宅IP代理?有何用途?

在大数据时代&#xff0c;互联网成为我们生活与工作中不可或缺的一部分。然而&#xff0c;随着网络环境的日益复杂&#xff0c;隐私保护、网络访问限制等问题也逐渐凸显&#xff1b;以及跨境业务蓬勃发展。在这样的背景下&#xff0c;住宅IP代理作为一种技术解决方案&#xff0…

android studio 无法识别androidTest模块Test模块

android studio 无法识别androidTest模块Test模块 问题案例解决方法 androidTest是UI测试&#xff0c;可以运行在设备或虚拟设备上&#xff0c;需要编译打包为APK在设备上运行 版本依赖 android studio 2023.2.1 gradle kts架构 问题案例 下面无法识别到androidTest&#xff…

供应链|OR论文解读:具有内生随机交货期的双源库存最优策略

编者按 本次解读的文章发表于 Operations Research&#xff0c;原文信息&#xff1a;Song, J. S., Xiao, L., Zhang, H., & Zipkin, P. (2017). Optimal policies for a dual-sourcing inventory problem with endogenous stochastic lead times. Operations Research, 65…

11. 统计(均值、方差、正态分布)和聚类(接近kmeans的聚类)分类(python和c++代码)

以下代码的每个函数功能都做了注释&#xff0c;分别用python和c代码做了具体的实现&#xff0c;不是最终效果&#xff0c;后续会继续优化。以下代码中&#xff0c;python代码在每个步骤处理完数据后都画了散点图显示了处理后的数据效果&#xff0c;c代码是从python代码翻译过来…

学习大数据DAY28 python基础语法

目录 思维导图 数据类型 变量 输入 输出 运算符 bool 类型 常量变量拼接 流程控制 选择结构 if 循环结构 while 及 for 循环 字符串(String) 字符串的索引截取 索引 1.len() #获取字符串长度 2.str.find()字符查找 ,找到返回索引&#xff0c;没找到返回-1 3.st…