Qt扫盲-QLabel使用总结

article/2025/10/14 6:17:35

QLabel使用总结

  • 一、QLabel 显示内容
  • 二、注意事项
    • 1. 格式注意
    • 2. 不保留先前状态
    • 3. 格式对齐
    • 4. 伙伴焦点
  • 三、信号和槽函数使用
    • 1. 信号
    • 2. 槽函数
  • 总结:

QLabel 其实就是一个用来只读显示的简易控件。适合数据量很小的内容显示。
QLabel用于显示 文本或图像不提供用户交互功能。QLabel的视觉外观可以通过多种方式进行配置,并且可用于为另一个小组件指定焦点助记键。如果涉及到很多内容的显示,比如多文本的话,就最好用 QTextEdit来弄,或者其他QTextBrower 之类的。

  • 像下面这种
    在这里插入图片描述

一、QLabel 显示内容

支持内容设置函数
Plain Text 纯文本通过 setText() 设置内容;用 text() 获取值
Rich Text 富文本通过 setText() 设置内容;通过 setTextFormat() 设置富文本格式
PixMap 图片通过 setPixmap() 设置图片
Movie 动画(gif格式)使用 setMovie() 设置动画
Number 数字(int、double)使用 setNumber() 自动把数字转换为字符串,有时候就可以不用自己转格式啦

二、注意事项

1. 格式注意

我们在使用 setText() 时, QLabel 会尝试猜测它是将文本显示为纯文本还是富文本(HTML 4 标记的子集)。但是效果不好,可能QLabel 的显示表现会和我们的想法不一致,所有我们最好显式调用 setTextFormat(),例如,如果您希望文本为纯格式可能就显示出 Web形式的数据。

2. 不保留先前状态

当使用任何这些功能更改内容时,将清除任何以前的内容。不会保留之前的状态的。清除内容使用 clear() 函数

3. 格式对齐

默认情况下,QLabel 会对 文本和图像 内容 左对齐、垂直居中显示,其中要显示的文本中的任何选项卡都会自动展开,我们也可以设置用 … 来表示放不下的内容。但是,QLabel的外观可以通过多种方式进行调整和微调。
内容在 QLabel 小部件区域中的位置可以使用 setAlignment() 和 setIndent() 进行调整。文本内容还可以使用 setWordWrap() 沿单词边界换行。例如,此代码设置一个下沉式效果,右下角有两行文本(两行都与标签右侧齐平):

QLabel *label = new QLabel(this);
label->setFrameStyle(QFrame::Panel | QFrame::Sunken);
label->setText("first line\nsecond line");
label->setAlignment(Qt::AlignBottom | Qt::AlignRight);

因为 QLabel 继承至 QFrame,所以 QFrame 的边框效果QLabel都可以设置。

4. 伙伴焦点

QLabel通常用作交互式小部件的标签。为此,QLabel提供了一种有用的机制来添加助记符(参见QKeySequence),该助记符将键盘焦点设置为其他小部件(称为QLabel的“伙伴”)。例如:

QLineEdit *phoneEdit = new QLineEdit(this);
QLabel *phoneLabel = new QLabel("&Phone:", this);
phoneLabel->setBuddy(phoneEdit);QLabel *eidtLabel = new QLabel("&Edit:", this);
QPushButton * editButton = new QPushButton("EditBtn");
eidtLabel->setBuddy(editButton);

在此示例中,当用户按 Alt+P 时,键盘焦点将转移到标签的 Buddy(QLineEdit)。如果 Buddy 是一个按钮(继承自 QAbstractButton),按了 Alt + E 就触发助记符将模拟按钮单击

  • 在设置 text 的时候 加上 & 就可以使用 Alt + text的首字母触发这些功能。

三、信号和槽函数使用

1. 信号

// 这个要设置为可以打开链接
label->setOpenExternalLinks(true);// 当用户点击了这个QLabel上的链接 
void linkActivated(const QString &link)//当鼠标了这个QLabel上的链接 
void linkHovered(const QString &link)

2. 槽函数

//清空内容
void clear()//设置动画
void setMovie(QMovie *movie)//设置数字
void setNum(double num)
void setNum(int num)//设置图片
void setPicture(const QPicture &picture)
void setPixmap(const QPixmap &)//设置内容
void setText(const QString &)

总结:

QLabel 其实就是一个用来只读显示的简易控件。适合数据量很小的内容显示。
QLabel用于显示 文本或图像不提供用户交互功能。QLabel的视觉外观可以通过多种方式进行配置,并且可用于为另一个小组件指定焦点助记键。如果涉及到很多内容的显示,比如多文本的话,就最好用 QTextEdit来弄,或者其他QTextBrower 之类的。


http://chatgpt.dhexx.cn/article/rDuQs23E.shtml

相关文章

QT常用控件——QLabel标签控件

操作系统: 统信UOSv20 Qt版本: 5.11.3 一,简单介绍 QLabel用于显示文本或图像,不提供用户交互功能,标签的视觉外观可以以各种方式配置。 项目内容HeaderQLabelqmakeQT widgetsInheritsQFrame 二,常用方法 1. 常用方法 方法…

JavaScript 弹出对话框3种方式

js 弹出对话框3种方式对话框有三种 1:只是提醒,不能对脚本产生任何改变; 2:一般用于确认,返回 true 或者 false ,所以可以轻松用于 if...else...判断 3:一个带输入的对话框,可以返回…

js的弹出框

js的弹出框包括三种:alert、confirm、prompt 1 alert() alert()方法有一个参数,就是用户想弹出的内容,弹出框很简单,就一个显示功能,你可以点击确认关闭这个弹出框。 例如: alert("hello world&…

JavaScript弹出对话框的三种方法

三种方法 alert(); 最简单,将alert();括号内的内容弹出。 confirm(); 与alert();类似,包含确认和取消按钮,点击确定confirm();方法会返回true,点击取消confirm();方法会返回false; prompt(); 与confirm();方法…

JavaScript弹出框

提到弹出框,首先想到的alert()了,其次想到的也还是alert(),其实在js中有三种弹出框,下面我们一一说明。 1,仅确定。 即:对话框界面上只有确定按钮。该功能可以使用alert(…

JS弹出对话框的三种方式

javascript的三种对话框是通过调用window对象的三个方法alert(),confirm()和prompt()来获得,可以利用这些对话框来完成js的输入和输出,实现与用户能进行交互的js代码。 第一种:alert()方法 alert()方法是这三种对话框中最容易使用…

JavaScript弹出对话框的三种方式-alert()-confirm()-prompt()

一、alert()警告框(确定) alert()方法是显示一条弹出提示消息和确认按钮的警告框。 需要注意的是 : alert()是一个阻塞的函数,如果不点确认按钮,后面的内容就不会加载出来。 使用方式: alert(“想要提示的文…

ssh 公钥登录

公钥登录远程主机 ssh-copy-id命令可以把本地主机的公钥复制到远程主机的authorized_keys文件上。 ssh-copy-id命令也会给远程主机的用户主目录(home)和~/.ssh, 和~/.ssh/authorized_keys设置合适的权限。 ssh-copy-id [-i [identity_file]] [user]m…

SSH登录失败提示Key exchange failed

前两天去配置一台华为5735交换机,到现场才被告知网络中不允许接入私人电脑,要用他们的涉密电脑配置,结果配置完成后测试SSH远程登录失败,提示如下图: 多次检查配置没有发现有什么遗漏,后来询问别人告知是本…

统信UOS配置SSH登录

配置ssh登录 vim /etc/ssh/sshd_config #打开ssh配置文件 Port 22 #开启ssh 22端口 PermitRootLogin yes #允许root登录 systemctl restart sshd #重启sshd服务 使用MobaXterm1_CHS1远程工具测试 登录成功

Oracle云服务器启用SSH登录

Oracle云服务器(虚机实例)创建创建完成后,打开FinalShell(可以使用其他Shell登录工具)配置好相应的信息。 在此注意以下两点: 用户名是:Centos系统默认账户是opc;Ubuntu系统默认账户…

通过SSH登录Linux云服务器方法

目录 什么是SSH ? SSH登录云服务器 VScode配置ssh环境 VSCode配置Linux平台C/C编程环境 什么是SSH ? Secure Shell(安全外壳协议,简称SSH)是一种加密的网络传输协议,可在不安全的网络中为网络服务提供安全的传输环境。SSH通…

树莓派SSH登录显示Access Denied

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 一、2022.4.4版本以前二、2022.4.4版本以后 一、2022.4.4版本以前 补充一个,第一次连接wifi,在内存卡根目录新建wpa_supplicant.conf文件,输…

ESXi开启SSH登录权限

一、使用vmware vSphere client工具登录到esxi主机, 依次点击:主机---配置---安全配置文件---属性 二、 找到SSH,点击选项. 三、点击”启动” 四、点击“确定”保存就可以了。

kali下开启ssh登录的方法

1.netstat -lnt //查看开放是否开放22端口 2.vim /etc/ssh/sshd_config //进入关于ssh的配置文件 3.修改内容: 按i进行编辑修改; 修改完成后按Esc ,按:,输入wq保存修改并退出。 4./etc/init.d/ssh…

python实现远程ssh登录

1、安装库 pip install paramiko 2、函数介绍 导入库 import paramiko 创建客户端 ssh paramiko.SSHClient() 设置校验 ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) 连接登录 ssh.connect(‘192.168.xx.xx’, 22, ‘root’, ‘pwd’) 执行命令 stdin, st…

限制SSH登录IP

步骤: 在指定IP的机器上(目前是 172.1.1.10),登录192.168.1.10终端,输入命令: vim /etc/ssh/sshd_config 在末尾输入: AllowUsers root192.168.1.10 即允许192.168.1.10 登录root账户 如需新…

Ubuntu SSH登录

远程登录Ubuntu,一般使用SSH方式。下面介绍SSH的安装和使用。 1、安装SSH服务器 sudo apt-get install openssh-server2、关闭SSH sudo /etc/init.d/ssh stop3、配置SSH su root vim /etc/ssh/sshd_configPort XXX PermitRootLogin yes4、启动SSH 1)…

debian ssh登录root

1、xshell无法登录root 2、修改/etc/ssh/sshd_config 如果没有/etc/ssh/sshd_config 就安装一下 apt install openssh-server 然后修改/etc/ssh/sshd_config cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak vi /etc/ssh/sshd_config 添加一行:PermitRootL…

Linux的ssh登录命令,Linux SSH登录命令总结

当项目计算量比较大,我们需要将任务分布到多台电脑上面运行,因为对于分布式概念不熟,就想到了Linux最简单的ssh协议,远程控制其他电脑,然后写shell脚本统一在所有电脑上运行程序。 简单说,SSH是一种网络协议,用于计算机之间的加密登录。 如果一个用户从本地计算机,使用SSH协…