pyQt5-label常用方法

# -*- coding:utf-8 -*-
"""
@Time:2022/3/22 20:01
@Author:小柠檬
@File:label.py
"""
from PyQt5 import uic, QtCore
from PyQt5.QtGui import QPixmap
from PyQt5.QtWidgets import QApplication


class Label:
    def __init__(self):
        # 加载UI界面
        self.ui = uic.loadUi("label.ui")

        # 1.更改标签内容
        self.ui.label_text.setText('更改标签内容')

        # 2.获取标签上的文本
        label_text = self.ui.label_text.text()
        print(label_text)

        # 3.设置标签提示
        self.ui.label_image.setToolTip('这是标签提示')

        # 4.添加标签背景
        image_path = r'F:\pyDemo\other\07-gui_Qt5\02-控件\00-resource\image\cat.jpg'
        self.ui.label_image.setPixmap(QPixmap(image_path))

        # 5.点击标签访问超链接
        self.ui.label_url.setText("<A href='www.baidu.com'>欢迎百度</a>")
        self.ui.label_url.setOpenExternalLinks(True)  # 默认不允许访问超链接,需要使用setOpenExternalLinks(True)允许


def main():
    QtCore.QCoreApplication.setAttribute(QtCore.Qt.AA_EnableHighDpiScaling)  # 和designer设计的窗口比例一致
    app = QApplication([])
    label = Label()
    label.ui.show()
    app.exec_()


if __name__ == '__main__':
    main()

### 如何在 PyQt5 中为 Label 控件添加图标 在 PyQt5 中,`QLabel` 是一种非常常用的控件,通常用来显示文本或图像。如果要向 `QLabel` 添加图标,则可以通过设置其 pixmap 属性来实现。以下是具体的方法: #### 使用 QPixmap 设置 QLabel 的图标 可以利用 `QPixmap` 类加载图片文件,并将其应用到 `QLabel` 上。 ```python import sys from PyQt5.QtWidgets import QApplication, QWidget, QLabel from PyQt5.QtGui import QPixmap if __name__ == '__main__': app = QApplication(sys.argv) window = QWidget() window.setWindowTitle("QLabel 图标示例") label = QLabel(window) pixmap = QPixmap("example.png") # 替换为实际存在的图片路径 label.setPixmap(pixmap) # 将图片设置到 QLabel 上 window.setGeometry(100, 100, pixmap.width(), pixmap.height()) window.show() sys.exit(app.exec_()) ``` 上述代码展示了如何通过 `setPixmap()` 方法将一张图片作为图标配给 `QLabel`[^1]。需要注意的是,这里的 `"example.png"` 应替换为你本地的实际图片路径。 --- #### 调整图片尺寸以适应界面布局 有时可能需要调整图片的大小以便更好地适配窗口或其他控件。此时可使用 `scaled()` 函数对图片进行缩放处理。 ```python pixmap_resized = pixmap.scaled(100, 100) # 缩放到指定宽度和高度 (单位:像素) label.setPixmap(pixmap_resized) ``` 此操作会将原图片按比例缩小至宽高均为 100 像素的效果[^2]。 --- #### 处理无响应问题 当运行 PyQt5 程序时,若未调用 `app.exec_()` 或者程序逻辑阻塞了主线程中的事件循环,则可能导致应用程序失去响应能力。因此,在设计 GUI 界面时务必确保始终启动并维护好事件循环机制[^3]。 --- ### 注意事项 - 如果尝试加载不存在或者损坏的图片资源,可能会引发异常错误;建议提前验证目标文件是否存在以及格式是否支持。 - 对于动态更新标签内容的情况(比如切换不同状态对应的不同图标),记得重新调用 `setPixmap()` 来刷新视图数据。 ---
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值