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

【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.xdnf.cn/news/759529.html

相关文章:

  • 18. Qt系统相关:多线程
  • Matlab作图之 subplot
  • 抖音客户端训练营--day2
  • 一:UML类图
  • JMeter 直连数据库
  • 1Remote远程会话管理以及一键启动虚拟机
  • Spring 中 @Value 注解多实例配置方案详解
  • 看问题的本质背后是什么?
  • pycharm打印时不换行,方便对比观察
  • Vue3.5 企业级管理系统实战(二十一):菜单权限
  • 前端面经 两栏布局
  • 远程管理SSH服务的搭建
  • 论文略读:Uncertainty-Aware Graph Structure Learning
  • 开源版 PyMOL 如何绘制 新冠病毒 分子结构?
  • Vue单文件组件
  • 打卡day42
  • 【Netty】EventLoopGroup
  • waitpid的waitstatus 含义源码解读
  • Linux 内核中 skb_orphan 的深度解析:从版本差异到核心机制
  • JOIN使用的注意事项
  • HTTP协议解析
  • 话题通信之python实现
  • 【免杀】C2免杀技术(十三)Inline Hook 概念篇
  • C# winform 教程(一)
  • Hartree-Fock 自洽场计算流程
  • Oracle正则表达式学习
  • 正则表达式笔记
  • yolo目标检测助手:具有模型预测、图像标注功能
  • 【复杂网络分析】什么是modularity?
  • maven中的maven-antrun-plugin插件详解