当前位置: 首页 > news >正文

8、QT——QLabel使用小记2

前言:记录开发过程中QLabel的使用,持续更新ing...

开发平台:Win10 64位

开发环境:Qt Creator 13.0.0 

构建环境:Qt 5.15.2 +MSVC2019 64位

一、基本属性

技巧:对于Qlabel这类控件的属性有一些共同的特点,那就是set+xxx是设置这个控件的对应的属性,如果去掉set,那就是获取这个控件的对应属性。

基本功能:提供文本或图像显示,外观可以通过多种方式进行配置,QLabel 可以包含以下任何内容类型:

内容设置
纯文本通过setText()方法传递一个QString
富文本

通过setText()方法传递一个富文本QString

像素图通过 setPixmap()设置 一个 QPixmap ,用于显示图像
电影通过setMovie来设置一个QMovie类型的多媒体,用于显示动画特效
数字通过 setNum()属性显示int 或 double类型数据
啥也不显示

#include <QApplication>
#include <QLabel>
#include <QPixmap>int main(int argc, char *argv[]) {QApplication app(argc, argv);QLabel label;label.setText("Hello, World!");  // 设置文本QPixmap pixmap("image.png");     // 加载图像label.setPixmap(pixmap);         // 设置图像label.setAlignment(Qt::AlignCenter);  // 设置对齐方式label.show();return app.exec();
}

二、功能测试

2.1 移动QLabel位置

使用QLabel的move()方法和x(),y()属性。

通过定时器去改变label的y坐标轴,使其上下移动。

QTimer *timer=new QTimer;timer->start(10);connect(timer,&QTimer::timeout,[=]{//ui->label->move(ui->label->x(),yValue++);if(!direction){ui->label->move(ui->label->x(),yValue++);if(yValue==this->y())direction=true;}else {ui->label->move(ui->label->x(),yValue--);if(yValue==0)direction=false;}});

2.2 设置全部QLabel样式

初始化时想要去掉QLabel的央视,在特定条件下再对QLabel进行设置

QList<QLabel *> LBlist = ui->centralwidget->findChildren<QLabel*>();for(auto lb :LBlist){lb->setStyleSheet("");}

 通过findChildren的泛型方法获取全部的QLabel,然后循环对其样式进行设置。

有时候我们想在初始化的时候对个别的QLabel不进行设置,可以在for循环中去排除

QList<QLabel *> LBlist = ui->centralwidget->findChildren<QLabel*>();for(auto lb :LBlist){ if(lb->objectName()!="label"){lb->setStyleSheet("");}}

 先判断QLabel的objectName()属性,就是对象名字,通过名字排除。

三、参考文献 

3.1 Qt——QLabel控件常见的属性、方法和信号-CSDN博客

3.2(三)Qlabel显示图片_qlabel加载图片-CSDN博客

http://www.lryc.cn/news/349480.html

相关文章:

  • python实现读取串口数据-使用LibModbus库实现一个实时读取串口数据
  • 类与面向对象编程(Object-Oriented Programming, OOP)
  • 引用数据类型 栈内存 堆内存
  • 【class8】人工智能初步(图像识别-----卷积神经网络)
  • Node.js安装及环境配置(超详细!保姆级!!)
  • 利用反射如何动态生成sql
  • SpringBoot项目中使用Redis,Mybatis和JWT
  • CSS2(一):CSS选择器
  • LeetCode题练习与总结:不同的二叉搜索树--96
  • 第八十一章 将 Web 应用程序与远程 Web 服务器结合使用 - 如果从 Web 服务器提供静态文件
  • AVL树、红黑树
  • Vscode编辑器 js 输入log自动补全
  • structured concurrency
  • 【免费】在线识别通用验证码接口
  • 如何通过汽车制造供应商协同平台,提高供应链的效率与稳定性?
  • 使用LangChain创建简易聊天机器人
  • 研究生学习---找工作
  • 偶然发现了Python的一个BUG。。。
  • 36. 有效的数独 - 力扣(LeetCode)
  • 开源收银系统在服装连锁店中发挥的重要作用
  • 代码随想录三刷day51
  • 基于python+Django的二维码生成算法设计与实现
  • pytorch 2.0 多线程并行,导致GPU利用100%,卡住
  • 后端开发面经系列 -- 阿里C++二面面经
  • 【Image captioning】In Defense of Grid Features for Visual Question Answering实现流程
  • MySQL用SQL取三列中最大的数据值
  • 【Mac】如何解决打开PD虚拟机后Mac无法上网的问题?
  • 【NodeMCU实时天气时钟温湿度项目 7】和风天气API返回JSON数据信息的解压缩实现——ArduinoUZlib功能库
  • leetcode题目9
  • CNAME记录