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

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 编程中常用的基础控件之一。

相关文章:

  • 鸿蒙OS基于UniApp的区块链钱包开发实践:打造支持鸿蒙生态的Web3应用#三方框架 #Uniapp
  • LeetCode 热题 100 155. 最小栈
  • unix/linux source 命令,其高级使用
  • 历史数据分析——广州港
  • C#里与嵌入式系统W5500网络通讯(3)
  • Java补充(Java8新特性)(和IO都很重要)
  • 零基础安装 Python 教程:从下载到环境配置一步到位(支持 VSCode 和 PyCharm)与常用操作系统操作指南
  • 【Go-6】数据结构与集合
  • 【Java】JDK 命令行工具
  • WIN11+VSCODE搭建的c/c++环境调试报错解决
  • 数据要素×AI:高质量数据集如何成为智能时代的“新石油“
  • Python 中 dpkt 库的详细使用指南(强大的 Python 数据包解析库)
  • git 如何解决分支合并冲突(VS code可视化解决+gitLab网页解决)
  • 238除自身以外数组的乘积
  • Go 语言 select 语句详解
  • 【STM32开发板】接口部分
  • Oracle正则表达式学习
  • LeetCode 39.组合总和:回溯法与剪枝优化的完美结合
  • Go语言常见接口设计技巧-《Go语言实战指南》
  • 题单:最大公约数(辗转相除法)
  • 南宁市网站维护与推广公司/网站优化要多少钱
  • 网站被黑了怎么恢复/网站关键字优化软件
  • 二级网站建设/南阳网站优化公司
  • 嘉兴网站建设seo/酒泉网站seo
  • 招聘网站开发设计/打开网址跳转到国外网站
  • 日本二手表网站/seo是做什么的