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

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

文章目录

  • 标签控件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.xdnf.cn/news/10369.html

相关文章:

  • Git初识Git安装
  • Spring Boot,两种配置文件
  • LeetCode 39.组合总和:回溯法与剪枝优化的完美结合
  • CCPC dongbei 2025 F
  • 组件化:软件工程化的基础
  • 接口安全SOAPOpenAPIRESTful分类特征导入项目联动检测
  • 树莓派3B小练习
  • IT技术文章汇总
  • 美业+智能体,解锁行业转化新密码(2/6)
  • 大白话 Seata 分布式事务浅析,详解TCC模式
  • 腾讯位置商业授权行政区划开发指南
  • Codeforces Round 1028 (Div. 2) B. Gellyfish and Baby‘s Breath
  • Nginx反向代理
  • NodeJS全栈开发面试题讲解——P12高性能场景题
  • Chorme如何对于youtube视频进行画中画背景播放?
  • 多模态AI的企业应用场景:视觉+语言模型的商业价值挖掘
  • 8天Python从入门到精通【itheima】-62~63
  • 结合源码分析Redis的内存回收和内存淘汰机制,LRU和LFU是如何进行计算的?
  • 深度学习|pytorch基本运算-乘除法和幂运算
  • 初识PS(Photoshop)
  • 【Oracle】安装单实例
  • 【Go】2、Go语言实战
  • python打卡day42@浙大疏锦行
  • 动态库导出符号与extern “C“
  • 2025年05月总结及随笔之家电询价及以旧换新
  • 剪枝中的 `break` 与 `return` 区别详解
  • APM32主控键盘全功能开发实战教程:软件部分
  • 【论文解读】Deformable DETR | Deformable Transformers for End-to-End Object Detection
  • 题单:最大公约数(辗转相除法)
  • 安全漏洞修复导致SpringBoot2.7与Springfox不兼容