PySide6 GUI 学习笔记——常用类及控件使用方法(标签控件QLabel)

article/2025/8/6 7:49:10

文章目录

  • 标签控件QLabel及其应用举例
    • 标签控件QLabel的常用方法及信号
    • 应用举例
      • Python 代码示例1
      • Python 代码示例2
    • 小结

标签控件QLabel及其应用举例

QLabel 是 PySide6.QtWidgets 模块中的一个控件,用于在界面上显示文本或图像。它常用于作为标签、提示信息或图片展示。QLabel 支持丰富的文本格式(如 HTML)、自动换行、对齐方式设置,并可显示静态图片或动画(如 GIF)。

常用属性和方法包括:

  • setText():设置显示的文本内容。
  • setPixmap():设置显示的图片。
  • setAlignment():设置文本或图片的对齐方式。
  • setWordWrap():设置是否自动换行。
  • setTextFormat():设置文本格式(纯文本或富文本)。
  • setBuddy():为标签设置伙伴控件,实现快捷键跳转。

QLabel 适用于需要静态文本或图片展示的场景,不支持用户编辑。更多详细信息可参考官方文档。

标签控件QLabel的常用方法及信号

方法名说明
setText(text)设置标签显示的文本内容
setPixmap(pixmap)设置标签显示的图片
setAlignment(alignment)设置文本或图片的对齐方式
setWordWrap(on)设置是否自动换行
setTextFormat(format)设置文本格式(纯文本或富文本)
setBuddy(widget)设置伙伴控件,实现快捷键跳转
setScaledContents(scaled)设置图片是否自动缩放以适应标签大小
setOpenExternalLinks(open)设置是否允许点击超链接打开外部链接
text()获取当前显示的文本内容
pixmap()获取当前显示的图片
alignment()获取当前对齐方式
wordWrap()获取当前是否自动换行
textFormat()获取当前文本格式
buddy()获取当前伙伴控件
[slot] clear()清除标签内容
[slot] setNum(num)设置数字内容(int/float)
[slot] setPicture(picture)设置QPicture对象为标签内容
[slot] setMovie(movie)设置QMovie动画为标签内容
[slot] setTextInteractionFlags(flags)设置文本交互标志

应用举例

Python 代码示例1

from PySide6.QtWidgets import QApplication, QLabel, QWidget, QVBoxLayout
from PySide6.QtCore import Qt
import sysapp = QApplication(sys.argv)window = QWidget()
window.setWindowTitle("QLabel 示例")label1 = QLabel("这是一个普通文本标签")
label2 = QLabel("<b>支持富文本显示</b>")
label2.setTextFormat(Qt.RichText)
label3 = QLabel()
label3.setText("多行文本自动换行演示。QLabel 可以根据窗口大小自动换行。")
label3.setWordWrap(True)layout = QVBoxLayout(window)
layout.addWidget(label1)
layout.addWidget(label2)
layout.addWidget(label3)window.setLayout(layout)
window.show()
app.exec()

示例1

Python 代码示例2

import sys
from PySide6.QtWidgets import QApplication,QWidget,QLabel
from PySide6.QtGui import QPixmap,QFont
from PySide6.QtCore import QRect,Qt,QSizeclass MyWidget(QWidget):def __init__(self,parent=None):super().__init__(parent)self.setFixedSize(QSize(600,400))w = self.width()  #窗口的宽度h = self.height()  #窗口高度self.label1 = QLabel(self)self.label2 = QLabel(self)self.label3 = QLabel(self)self.label4 = QLabel(self)self.label1.setGeometry(QRect(0, 0, w,h))self.label1.setPixmap(QPixmap("pic.png"))self.label2.setGeometry(QRect(int(w/2)-150,150,300,30))font = QFont("微软雅黑",pointSize = 18)self.label2.setFont(font)self.label2.setText("<A href='https://blog.csdn.net/Humbunklung'>欢迎来到我的CSDN博客!</A>")self.label2.setToolTip("我的博客 https://blog.csdn.net/Humbunklung")  #设置提示信息self.label2.setAlignment(Qt.AlignCenter | Qt.AlignVCenter)self.label2.linkHovered.connect(self.hover)  #定义信号与槽的链接self.label2.linkActivated.connect(self.activated)  #定义信号与槽的链接self.label3.setGeometry(QRect(int(w/2),h-50,int(w/2),50))font = QFont("楷体",pointSize = 20)self.label3.setFont(font)self.label3.setText(">>进入我的<A href='https://blog.csdn.net/Humbunklung'>博客</A>")self.label3.setOpenExternalLinks(True)def hover(self,link):  #鼠标经过超链接的关联函数print("欢迎来到我的博客!")def activated(self,link):  #单击超链接的关联函数rect = self.label3.geometry()rect.setY(rect.y()-50)self.label4.setGeometry(rect)self.label4.setText("单击此链接,进入网站"+link)
if __name__ == '__main__':app=QApplication(sys.argv)window = MyWidget()window.show()sys.exit(app.exec())

示例2

小结

本文介绍了 PySide6 中 QLabel 控件的常用属性、方法及其应用场景,并通过两个 Python 代码示例演示了 QLabel 在文本、富文本、图片及超链接等方面的实际用法。QLabel 适合用于显示静态文本或图片,支持丰富的文本格式和交互功能,是 GUI 编程中常用的基础控件之一。


http://www.hkcw.cn/article/lgPbwaSoIR.shtml

相关文章

TCP三次握手四次挥手

TCP基本认识 TCP的头格式 序列号:在建立连接时由计算机生成随机数作为初始值&#xff0c;通过SYN包传给接收端。每发送一次数据就累加一次该数据字节数的大小。用来解决网络号乱序。(乱序问题:未按发送顺序到达接收端称为乱序) 确认应答号:指下一次期望收到的数据的序列号&…

黑马Java面试笔记之MySQL篇(事务)

一. 事务的特性 事务的特性是什么&#xff1f;可以详细说一下吗&#xff1f; 事务是一组操作的集合&#xff0c;他是一个不可分割的工作单位&#xff0c;事务会把所有的操作作为一个整体一起向系统提交或撤销操作请求&#xff0c;即这些操作要么同时成功&#xff0c;要么同时失…

AI炼丹日志-27 - Anubis 通过 PoW工作量证明的反爬虫组件 上手指南 原理解析

点一下关注吧&#xff01;&#xff01;&#xff01;非常感谢&#xff01;&#xff01;持续更新&#xff01;&#xff01;&#xff01; Java篇&#xff1a; MyBatis 更新完毕目前开始更新 Spring&#xff0c;一起深入浅出&#xff01; 大数据篇 300&#xff1a; Hadoop&…

WEBSTORM前端 —— 第3章:移动 Web —— 第4节:移动适配-VM

目录 一、适配方案 二、VM布局 ​编辑 三、vh布局 四、案例—酷我音乐 一、适配方案 二、VM布局 三、vh布局 四、案例—酷我音乐

AI:使用 Keras 实现线性回归模型

🌟从零开始:使用 Keras 实现线性回归模型(附完整代码 + 可视化教程)🔢📈 ✨线性回归是机器学习中的“Hello World”,适合新手入门。本文将通过一个完整的实战案例,带你使用 TensorFlow Keras 搭建一个线性回归模型,并对训练与预测结果进行可视化分析。 📎 本文亮…

TDengine 基于 TDgpt 的 AI 应用实战

基于 TDgpt 时序数据智能体的风力发电预测 作者&#xff1a; derekchen Demo 数据集准备 我们使用公开的UTSD数据集里面的某风场发电数据&#xff0c;作为预测算法的数据来源&#xff0c;基于历史数据预测未来一天内的每15分钟的发电量。原始数据集的采集频次为4秒&#xff…

模拟实现线程池(线程数目为定值)和定时器

前言 昨天学习关于定时器的相关知识。今天花时间去模拟实现了一个定时器&#xff0c;同时也去模拟实现了一个线程池(线程数目为定值)。我感觉我收获了很多&#xff0c;对于线程的理解加深了。跟大家分享一下~ 线程池和定时器(这个是主要)的实现 代码 线程池 import java.ut…

JMeter 性能测试

1.定时器 1.1 同步定时器 作用&#xff1a;阻塞线程使同时达到n个线程之后再发出请求&#xff0c;模拟高并发的场景。 路径&#xff1a;右键请求--添加--定时器--Synchronizing Timer 2.2 常数吞吐量定时器 作用&#xff1a;模拟服务器负载&#xff0c;即需要服务器以一个固定…

通俗易懂的 JS DOM 操作指南:从创建到挂载

目录 &#x1f9e9; 1. 创建元素&#xff1a;document.createElement / createElementNS &#x1f4dd; 2. 创建文本&#xff1a;document.createTextNode ✏️ 3. 修改文本&#xff1a;node.nodeValue &#x1f5d1;️ 4. 移除元素&#xff1a;el.removeChild() &#x1…

串口通信技术及USART应用研究

串口通信技术及USART应用研究 # 串口通信技术及USART应用研究 摘要&#xff1a;本文深入探讨了串口通信技术的基本原理、硬件电路设计以及USART&#xff08;通用同步/异步收发器&#xff09;在STM32微控制器中的应用。首先对通信接口进行了概述&#xff0c;分析了不同通信协议…

OneRef论文精读(补充)

接上篇&#xff1a;OneRef论文精读 The five referring datasets 这些数据集应用于指代表达式理解&#xff08;REC&#xff09;、短语定位&#xff08;PG&#xff09;及指代表达式分割&#xff08;RES&#xff09;任务。表8列出了详细的统计数据。 RefCOCO/RefCOCO/RefCOCOg&…

vscode 代理模式(agent mode),简单尝试一下。

1. 起因&#xff0c; 目的: agent mode&#xff0c; 很流行&#xff0c;名气很大。简单试试效果&#xff0c;确实很强。agent mode&#xff0c; 取代人工&#xff0c;确实是前进了一大步。 2. 先看效果 效果对比&#xff0c;左边是 普通的AI 生成的&#xff0c; 右边是 代理…

Scratch节日 | 六一儿童节抓糖果

六一儿童节怎么能没有糖果&#xff1f;这款 六一儿童节抓糖果 小游戏&#xff0c;让你变身小猫&#xff0c;开启一场甜蜜大作战&#xff01; &#x1f3ae; 游戏玩法 帮助小猫收集所有丢失的糖果&#xff0c;收集越多分数越高&#xff01; 小心虫子一样的“坏糖果”&#xff…

【Linux系统】第八节—进程概念(上)—冯诺依曼体系结构+操作系统+进程及进程状态+僵尸进程—详解!

hi&#xff0c;我是云边有个稻草人 偶尔中二的博主^(*&#xffe3;(oo)&#xffe3;)^&#xff0c;与你分享专业知识&#xff0c;祝博主们端午节快乐&#xff01; Linux—本节博客所属专栏—持续更新中—欢迎订阅&#xff01; 目录 一、冯诺依曼体系结构 二、操作系统(Opera…

告别手动绘图!基于AI的Smart Mermaid自动可视化图表工具搭建与使用指南

以下是对Smart Mermaid的简单介绍&#xff1a; 一款基于 AI 技术的 Web 应用程序&#xff0c;可将文本内容智能转换为 Mermaid 格式的代码&#xff0c;并将其渲染成可视化图表可以智能制作流程图、序列图、甘特图、状态图等等&#xff0c;并且支持在线调整、图片导出可以Docke…

PCB设计教程【强化篇】——USB拓展坞PCB布局

前言 本教程基于B站Expert电子实验室的PCB设计教学的整理&#xff0c;为个人学习记录&#xff0c;旨在帮助PCB设计新手入门。所有内容仅作学习交流使用&#xff0c;无任何商业目的。若涉及侵权&#xff0c;请随时联系&#xff0c;将会立即处理 目录 前言 一、前期准备与板框…

EC11旋转编码器,Versatile_RotaryEncoder库详解

旋转编码器与电位器 旋转编码器是电位器的现代数字等效物&#xff0c;并且用途更广泛。 旋转编码器可以不停地旋转360&#xff0c;而电位器只能旋转3/4圈。 电位器用于需要知道旋钮准确位置的情况。另一方面&#xff0c;旋转编码器用于需要知道位置变化而不是确切位置的情况…

【金融基础学习】债券回购方式

债券回购作为货币市场的重要工具&#xff0c;本质上是一种以债券为抵押的短期资金借贷行为。在银行间市场&#xff0c;质押式回购与**买断式回购*是两种主要形式。 1. 质押式回购(Pledged Repo, RP) – 所有权不转移的短期融资工具 1.1 质押式回购概述 质押式回购是交易双方…

助力高校AI教学与科研:GpuGeek推出618算力支持活动

618期间&#xff0c;GpuGeek推出面向高校师生的专属算力支持计划&#xff0c;6月5日至25日活动期间&#xff0c;完成学生认证的用户充值即可获得"学霸礼包"&#xff0c;同时平台算力嘉年华活动还将为用户提供额外算力赠送&#xff0c;有效降低了AI学习与研究的资源门…

多线程( Thread)

线程&#xff1a;是一个程序内部的一条执行流程。 多线程&#xff1a;是指从软硬件上实现的多条执行流程的技术&#xff08;多条线程由CPU负责调度执行&#xff09;。 创建线程&#xff1a; 多线程的创建方式之一&#xff1a;继承Thread类 1.定义一个子类MyThread继承线程类…