PySide6-控件教程-004-QLabel标签控件-数值类型、图形图像、动画

QLabel 标签控件

本文摘录自我的开源教程:PySide6 代码式教程 - QLabel,CSDN 平台仅做镜像,答疑、纠错请至 GitHub 提交 issue

QLabel除了显示文本字符串外,还可以用于显示数值类型、图形图像、动图等

数值类型

  • .setNum(num: int) 将标签设置为数值类型(int)
  • .setNum(num: float) 将标签设置为数值类型(float)

图形图像、动画

  • .setPicture(picture: QPicture) 设置标签显示的图像
  • .picture() -> QPicture 获取标签显示的图像
  • .setPixmap(p: QPixmap) 设置标签显示的位图
  • .pixmap() -> QPixmap 获取标签显示的位图
  • .setMovie(movie: QMovie) 设置标签显示的动画
  • .movie -> QMovie 获取标签显示的动画

关于QPixmapQPictureQMovie的更多信息,请参考本项目QtGui目录

本节示例代码如下,需要正确安装 PySide6 并下载对应静态资源才能运行:

# https://github.com/muziing/PySide6-Code-Tutorial

import sys

from PySide6 import QtGui, QtWidgets


class MyWidget(QtWidgets.QWidget):
    def __init__(self, *args, **kwargs):
        super().__init__(*args, **kwargs)
        self.setWindowTitle("QLabel-显示非文本内容")
        self.resize(800, 600)
        self.setup_ui()

    def setup_ui(self) -> None:
        """设置界面"""

        # ============ 数值类型 =============
        label_1 = QtWidgets.QLabel(self)
        label_1.move(320, 100)
        label_1.setNum(666)  # 设置为数值类型
        # label_1.setNum(88.8)  # 也可以设置浮点数

        # ============= 图像 ================
        label_2 = QtWidgets.QLabel(self)
        pic = QtGui.QPicture()  # 创建绘画设备(画布)
        painter = QtGui.QPainter(pic)
        painter.setBrush(QtGui.QBrush(QtGui.QColor(0, 128, 128)))  # 设置画刷
        painter.drawEllipse(0, 0, 150, 150)  # 绘制椭圆
        painter.end()
        label_2.setPicture(pic)  # 用于展示QPicture

        # ============= 位图 ================
        label_3 = QtWidgets.QLabel(self)
        label_3.move(600, 0)
        label_3.setPixmap(QtGui.QPixmap("../../Resources/Icons/OS_Ubuntu_128px.ico"))

        # ============= 动画 ================
        label_4 = QtWidgets.QLabel(self)
        label_4.move(200, 200)
        movie = QtGui.QMovie("../../Resources/Images/loading.gif")
        label_4.setMovie(movie)
        movie.start()  # 开始播放
        # movie.setPaused(True)  # 暂停播放


if __name__ == "__main__":
    app = QtWidgets.QApplication(sys.argv)
    window = MyWidget()
    window.show()
    sys.exit(app.exec())

关于 PySide6-Code-Tutorial

  • 前身为已有近 500 Stars 的爆火教程 PyQt_practice
  • 每个模块(.py文件)都可运行,展示了各种控件的各种功能属性作用,代码中有注释讲解
  • 使用最新的 Python 与 PySide 版本(目前为3.10与6.3)
  • 已经涵盖数十个常用控件,且仍在快速增加中

目录

原版教程地址:https://github.com/muziing/PySide6-Code-Tutorial

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值