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

【PyQt5】从零开始的PyQt5 - QLabel篇

从零开始的PyQt5 - QLabel篇

  • 引言
  • 一、简述
  • 二、例程
    • 2.1 显示到QWidget窗口上
    • 2.2 重新设置Label大小和对齐方式
    • 2.3 添加内容,设置边框
    • 2.4 显示富文本
  • 三、参考

引言

QLabel主要用于显示文本或图像,不提供用户交互功能。本文主要简述PyQt5中的QLabel以及展示常用例程。

一、简述

QLabel可以包含以下任何内容类型:

内容设置方法
普通文本调用setText(),传递QString
富文本调用setText(),传递包含富文本的QString
图片调用setPixmap(),传递QPixmap
动画调用setMovie(),传递QMovie
数字调用setNum(),传递intdouble,和setText类似
调用clear(),与空白纯文本相同
  1. QLable会尝试猜测输入的QString是以纯文本还是富文本,需确保输入格式正确,最好显式调用setTextFormat() (默认Qt::AutoText,可手动传递Qt::PlainTextQt::RichText)。
  2. 默认显示左对齐垂直居中的文本和图像,其中要显示的文本中的任何选项卡都会自动展开。其外观可以通过多种方式进行调整和微调。

二、例程

2.1 显示到QWidget窗口上

  • 效果展示
    在这里插入图片描述

  • 源码

import sys
from PyQt5.QtWidgets import QApplication, QWidget, QLabel
from PyQt5.QtCore import Qtclass ExampleApp(QWidget):def __init__(self):super().__init__()self.initUI()def initUI(self):label = QLabel('Hello, QLabel!', self)  # 创建一个标签设置文本,添加到此窗口中 (父窗口设置为此窗口)label.setAlignment(Qt.AlignCenter)      # 文本居中对齐self.setGeometry(300, 300, 400, 100)    # 设置窗口的布局self.show()if __name__ == '__main__':app = QApplication(sys.argv)ex = ExampleApp()sys.exit(app.exec_())

2.2 重新设置Label大小和对齐方式

  • 效果展示
    在这里插入图片描述

  • 源码

import sys
from PyQt5.QtWidgets import QApplication, QWidget, QLabel
from PyQt5.QtCore import Qtclass ExampleApp(QWidget):def __init__(self):super().__init__()self.initUI()def initUI(self):label = QLabel('Hello, QLabel!', self)  # 创建一个标签设置文本,添加到此窗口中 (父窗口设置为此窗口)label.setAlignment(Qt.AlignBottom | Qt.AlignRight)      # 文本靠右下label.resize(300, 100)                  # 设置大小self.setGeometry(300, 300, 400, 100)    # 设置窗口的布局self.show()if __name__ == '__main__':app = QApplication(sys.argv)ex = ExampleApp()sys.exit(app.exec_())

2.3 添加内容,设置边框

  • 效果展示
    在这里插入图片描述

  • 源码

import sys
from PyQt5.QtWidgets import QApplication, QWidget, QLabel, QFrame
from PyQt5.QtCore import Qtclass ExampleApp(QWidget):def __init__(self):super().__init__()self.initUI()def initUI(self):label = QLabel(self)  # 创建一个标签设置文本,添加到此窗口中 (父窗口设置为此窗口)label.setText("first line\nsecond line")  # 设置内容label.setAlignment(Qt.AlignCenter)  # 居中label.resize(300, 100)  # 设置大小self.setGeometry(300, 300, 400, 100)  # 设置窗口的布局label.setStyleSheet("QLabel {"  # 设置边框"  border: 2px solid red;""  border-radius: 5px;""}")self.show()if __name__ == '__main__':app = QApplication(sys.argv)ex = ExampleApp()sys.exit(app.exec_())

2.4 显示富文本

  • 效果展示
    在这里插入图片描述
  • 源码
import sys
from PyQt5.QtWidgets import QApplication, QWidget, QLabel, QFrame
from PyQt5.QtCore import Qtclass ExampleApp(QWidget):def __init__(self):super().__init__()self.initUI()def initUI(self):label = QLabel(self)  # 创建一个标签设置文本,添加到此窗口中 (父窗口设置为此窗口)label.setText("<b>加粗</b> <i>斜体</i> <u>下划线</u>")  # 设置内容label.setAlignment(Qt.AlignCenter)    # 居中label.resize(300, 100)                # 设置大小self.setGeometry(300, 300, 400, 100)  # 设置窗口的布局self.show()if __name__ == '__main__':app = QApplication(sys.argv)ex = ExampleApp()sys.exit(app.exec_())

三、参考

【Qt笔记】QLabel控件详解:https://blog.csdn.net/qq_52924376/article/details/141430178
PyQt5深入解析:QLabel的灵活多变:https://blog.csdn.net/babybin/article/details/135775452
PyQt5控件介绍【标签控件】-QLabel:https://zhuanlan.zhihu.com/p/677135910

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

相关文章:

  • 多模态AI的企业应用场景:视觉+语言模型的商业价值挖掘
  • 数据结构(7)树-二叉树-堆
  • 时序数据库IoTDB基于云原生的创新与实践
  • 怎么快速判断一款MCU能否跑RTOS系统
  • 使用原生前端技术封装一个组件
  • lesson04-简单回归案例实战(理论+代码)
  • Java 面试中的数据库设计深度解析
  • 国内首发!具有GPU算力的AI扫描仪
  • 【开发技巧指北】IDEA修改默认绑定Maven的仓库地址
  • 数据存储与运算
  • 【2025最新】Java图书借阅管理系统:从课程作业到实战应用的完整解决方案
  • springcloud openfeign 请求报错 java.net.UnknownHostException:
  • 【harbor】--配置https
  • Oracle 临时表空间详解
  • 深入理解享元模式:用Java实现高效对象共享
  • OptiStruct实例:消声器前盖ERP分析(2)RADSND基础理论
  • barker-OFDM模糊函数原理及仿真
  • Linux.docker.k8s基础概念
  • GIT命令行的一些常规操作
  • 近期知识库开发过程中遇到的一些问题
  • 3.RV1126-OPENCV 图像叠加
  • 使用 HTML + JavaScript 实现一个日历任务管理系统
  • 车载诊断架构SOVD --- 车辆发现与建连
  • Notepad++找回自动暂存的文件
  • DL00924-基于深度学习YOLOv11的工程车辆目标检测含数据集
  • Axure RP11安装、激活、汉化
  • 【PhysUnits】15.6 引入P1后的左移运算(shl.rs)
  • 自编码器Auto-encoder(李宏毅)
  • 数据结构之堆(topk问题、堆排序)
  • SpringBoot使用ffmpeg实现视频压缩