【Qt】显示类控件:QLabel、QLCDNumber、QProgressBar、QCalendarWidget

news2024/12/22 21:02:20

目录

QLabel

QFrame

例子:

textFormat

 pixmap、scaledContents

alignment

wordWrap、indent、margin

 buddy

 QLCDNumber

例子:

QTimer

QProgressBar

例子:

QCalendarWidget

例子:


QLabel

标签控件,用来显示文本和图片。

QLabel的核心属性:

text:标签中的文本。

textFormat:文本的格式。

setTextFormat的形参是枚举类型,有下面几种取值:

Qt::PlainText(纯文本)

Qt::RichText(富文本,支持html标签)

Qt::MarkdownText(markdown格式)

Qt::AutoText(根据文本内容自动决定文本格式)。

pixmap:QLabel内部的图片。QPixmap类对象,使用qrc文件中的资源路径初始化该对象。

scaledContents:scale:调节;(按比例或缩尺)绘制。标签中的图片内容自动拉伸填充整个标签。

alignment:alignment:对齐。用来设置标签中文本的对齐方式。

 枚举变量的取值:

wordWrap:wrap:换行。设置标签中的文本是否会自动换行,void setWordWrap(bool)

indent:设置标签中文本的缩进,水平和垂直方向都生效。

setIndent的形参是像素值。

margin:设置标签中的文本和边框之间的边距,四个方向都生效。

和indent一样设置边距方法参数也是像素。

openExternalLinks:是否能可以打开文本中涉及到的url。

buddy:给标签设置一个"伙伴",点击标签后对应的伙伴也会被激活。例如将QCheckBox作为一个伙伴,点击标签后,QCheckBox会被选中。

QFrame

从Qt Designer界面中选中一个label控件后,界面右侧就是继承关系,可以看到QLabel继承自QFrame、QWidget、QObject。

我们可以通过QFrame中frameshape改变标签的边框样式。

例子:

textFormat

 pixmap、scaledContents

现在要使我们导入到qrc文件中的图片铺满整个窗口,并且程序运行后,拖拽窗口大小同时该标签上的图片自动调节到与窗口一样的大小,且保持铺满窗口。

当我们进行拖拽窗口的时候,会触发一些系列resizeEvent,resizeEvent是QWidget类中的一个虚函数,当拖拽窗口时父类QWidget会调用虚函数resizeEvent,那么我们利用多态,通过在Widget子类中重写该虚函数resizeEvent。

alignment

默认的对齐方式是垂直居中和靠左,如下:

可以通过按位或多个枚举值来指定多个对齐方式,比如设置水平居中和靠底:

水平居中和垂直居中:

 靠顶和靠右:

wordWrap、indent、margin

仅仅只是设置了换行的:

设置缩进和文本与边框之间的边距后:

 buddy

有两个单选按钮,分别是两个标签的"伙伴",标签中的文本必须是&后跟一个键盘按键字符的形式,按下alt键+标签文本中&后跟的一个键盘按键字符,该标签对应的伙伴按钮就会被选中。

此时按下alt+V对应标签的伙伴按钮就被选中。

 QLCDNumber

专门显示数字的控件。

核心属性:

intValue:以整数型获取QLCDNumber中的数值。

value:以双精度浮点型获取QLCDNumber中的数值。

注意:设置QLCDNumber中的中的值是通过display方法设置的,display支持两种方法:1.使用字符串设置;2.使用整型设置。

digutCount:显示几位数字。

mode:数字显示形式。

segmentStyle:设置显示风格。

smalldecimalPoint:设置比较小的小数点。

例子:

设计一个从10到1的计时器(这里定时的描述必须是10s),间隔时间为1s。

QTimer

定时器类。通过QTimer中的start方法启动定时器,然后每隔一个周期触发一次QTimer::timeout信号,这个周期就是调用start方法启动定时器我们自己设定的时间。我们可以连接QTimer::timeout信号和一个槽函数。

 

QProgressBar

表示一个进度条。

核心属性:

minimum:进度条的最大值。

maximum:进度条的最小值。

value:进度条的当前值。

alignment:文本在进度条中的对齐方式。

textVisible:进度条的数字文本是否可见。

orientation:进度条的方向时水平还是垂直。

textDirection:文本的朝向。

format:进度条文本的类型。

更改进度条体的颜色:

通过Qt Designer右侧界面控件属性区更改QWidget类的styleSheet属性。

 上面这两种进入样式表更改界面都是可以的。

QProgressBarchunk:表示进度条中的进度块;QProgressBar::text表示进度条中的文本。

上面的其他属性都可以在Qt Creator右侧界面控件属性区进行设置。

例子:

搞一个进度条,100ms走1%。

QCalendarWidget

表示日历的控件。

核心属性:

selectDate:当前选中的日期。

日历控件重要的信号:

selecttionChanged():当选中的日期发生改变时发出。

activated(const QDate&):当双击一个有效的日期或按回车键时发出信号,形参是一个QDate类型,保存了选中的日期。

currentPageChanged(int,int):当年份月份改变时发出,形参是改变后的新年份月份。

例子:

选中日历中的某日期时,在标签中显示该日期。

注意:QDate中有一个toString()方法可以把日期转化为字符串形式。

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

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

相关文章

基于STM32的自学习智能小车设计

目录 引言系统设计 硬件设计软件设计系统功能模块 传感器模块控制模块自学习算法模块系统实现 硬件实现软件实现测试与优化结论与展望 1. 引言 随着人工智能和机器学习技术的不断发展,越来越多的智能小车开始实现自主学习与行为决策。传统的智能小车通常依靠固定的…

Android OpenGLES2.0开发(九):图片滤镜

“当你改变想法的时候,记得也要改变你的世界。”——诺曼文森特皮尔 Android OpenGLES开发:EGL环境搭建Android OpenGLES2.0开发(一):艰难的开始Android OpenGLES2.0开发(二):环境搭…

梳理你的思路(从OOP到架构设计)_简介设计模式

目录 1、 模式(Pattern) 是较大的结构​编辑 2、 结构形式愈大 通用性愈小​编辑 3、 从EIT造形 组合出设计模式 1、 模式(Pattern) 是较大的结构 组合与创新 達芬奇說:簡單是複雜的終極形式 (Simplicity is the ultimate form of sophistication) —Leonardo d…

vscode的keil assistant 中搜索不到全局变量

搜不到 但是在包含的文件中输入 ../../../,就是全局搜索的结果 我的文件结构是:\Desktop\LVGL文件系统移植(lvgl8.3)\Projects\MDK-ARM 盲猜是keil assistant 当前文件夹打开的时候是进入到了MDK-ARM文件夹层次&…

HTML语法规范

HTML语法规则 HTML 标签是由尖括号包围的关键词&#xff0c;标签通常是成对出现的&#xff0c;例如 <html> 和 </html>&#xff0c;称为双标签 。标签对中的第一个标签是开始标签&#xff0c;第二个标签是结束标签单标签比较少&#xff0c;例如<br />&#x…

flink实现复杂kafka数据读取

接上文&#xff1a;一文说清flink从编码到部署上线 环境说明&#xff1a;MySQL&#xff1a;5.7&#xff1b;flink&#xff1a;1.14.0&#xff1b;hadoop&#xff1a;3.0.0&#xff1b;操作系统&#xff1a;CentOS 7.6&#xff1b;JDK&#xff1a;1.8.0_401。 常见的文章中&…

大模型微调---Prompt-tuning微调

目录 一、前言二、Prompt-tuning实战2.1、下载模型到本地2.2、加载模型与数据集2.3、处理数据2.4、Prompt-tuning微调2.5、训练参数配置2.6、开始训练 三、模型评估四、完整训练代码 一、前言 Prompt-tuning通过修改输入文本的提示&#xff08;Prompt&#xff09;来引导模型生…

如何使用 WebAssembly 扩展后端应用

1. WebAssembly 简介 随着互联网的发展&#xff0c;越来越多的应用借助 Javascript 转到了 Web 端&#xff0c;但人们也发现&#xff0c;随着移动互联网的兴起&#xff0c;需要把大量的应用迁移到手机端&#xff0c;随着手端的应用逻辑越来越复杂&#xff0c;Javascript 的解析…

python学习——洛谷P2010 [NOIP2016 普及组] 回文日期 三种方法

[NOIP2016 普及组] 回文日期 文章目录 [NOIP2016 普及组] 回文日期题目背景题目描述输入格式输出格式样例 #1样例输入 #1样例输出 #1 样例 #2样例输入 #2样例输出 #2 提示方法一方法二方法三 题目背景 NOIP2016 普及组 T2 题目描述 在日常生活中&#xff0c;通过年、月、日这…

前端yarn工具打包时网络连接问题排查与解决

最近线上前端打包时提示 “There appears to be trouble with your network connection”&#xff0c;以此文档记录下排查过程。 前端打包方式 docker启动临时容器打包&#xff0c;命令如下 docker run --rm -w /app -v pwd:/app alpine-node-common:v16.20-pro sh -c "…

BenchmarkSQL使用教程

1. TPC-C介绍 Transaction Processing Performance Council (TPC) 事务处理性能委员会&#xff0c;是一家非盈利IT组织&#xff0c;他们的目的是定义数据库基准并且向产业界推广可验证的数据库性能测试。而TPC-C最后一个C代表的是压测模型的版本&#xff0c;在这之前还有TPC-A、…

Linux网络基础--传输层Tcp协议(上) (详细版)

目录 Tcp协议报头&#xff1a; 4位首部长度&#xff1a; 源端口号和目的端口号 32位序号和确认序号 标记位 超时重传机制&#xff1a; 两个问题 连接管理机制 三次握手&#xff0c;四次挥手 建立连接&#xff0c;为什么要有三次握手&#xff1f; 先科普一个概念&…

全志H618 Android12修改doucmentsui鼠标单击图片、文件夹选中区域

背景: 由于当前的文件管理器在我们的产品定义当中,某些界面有改动的需求,所以需要在Android12 rom中进行定制以符合当前产品定义。 需求: 在进入File文件管理器后,鼠标左击整个图片、整个文件夹可以选中该类型,进行操作,故代码分析以及客制化如下: 主要涉及的代码:…

Unity命令行传递自定义参数 命令行打包

命令行参数增加位置 -executeMethod 某脚本.某方法 参数1 参数2 参数3 ... 例如执行EditorTest.GetCommandLineArgs方法 增加两个命令行参数 Version=125 CDNVersion=100 -executeMethod EditorTest.GetCommandLineArgs Version=125 CDNVersion=100 Unity测试脚本 需要放在…

如何重新设置VSCode的密钥环密码?

故障现象&#xff1a; 忘记了Vscode的这个密码&#xff1a; Enter password to unlock An application wants access to the keyring “Default ke... Password: The unlock password was incorrect Cancel Unlock 解决办法&#xff1a; 1.任意terminal下&#xff0c;输入如下…

电子发票汇总改名,批量处理电子发票问题

今天给大家推荐一个财务方面工作的软件。可以帮你解决很多财务。发票方面的问题。 电子发票汇总改名 批量处理电子发票问题 这个软件安装之后。会在桌面上分成三个小软件&#xff0c;分别是修改单位信息、自定义命名规则和电子发票汇总改名。 你可以在这个软件里提取PDF或者of…

Linux——卷

Linux——卷 介绍 最近做的项目&#xff0c;涉及到对系统的一些维护&#xff0c;有些盘没有使用&#xff0c;需要创建逻辑盘并挂载到指定目录下。有些软件需要依赖空的逻辑盘&#xff08;LVM&#xff09;。 先简单介绍一下卷的一些概念&#xff0c;有分区、物理存储介质、物…

MySQL通用语法 -DDL、DML、DQL、DCL

SQL 全称 Structured Query Language&#xff0c;结构化查询语言。操作关系型数据库的编程语言&#xff0c;定义了 一套操作关系型数据库统一标准 。 SQL通用语法 MySQL语言的通用语法。 SQL语句可以单行或多行书写&#xff0c;以分号结尾。SQL语句可以使用空格/缩进来增强…

利用DnslogSqlinj工具DNSlog注入

工具下载链接 https://github.com/adooo/dnslogsqlinj 配置 将域名和API进行一个更改 之后再安装两个python2的库就可以使用dnslog进行自动化注入了 python2安装pip2 curl https://bootstrap.pypa.io/2.7/get-pip.py -o get-pip.py python2 get-pip.py库 pip2 install geven…

QT网络(一):主机信息查询

网络简介 在QT中进行网络通信可以使用QT提供的Qt Network模块&#xff0c;该模块提供了用于编写TCP/IP网络应用程序的各种类&#xff0c;如用于TCP通信的QTcpSocket和 QTcpServer&#xff0c;用于 UDP 通信的 QUdpSocket&#xff0c;还有用于网络承载管理的类&#xff0c;以及…