📜  PyQt5 Label – 获取模糊效果对象(1)

📅  最后修改于: 2023-12-03 14:45:46.974000             🧑  作者: Mango

PyQt5 Label – 获取模糊效果对象

在 PyQt5 中,可以使用标签(Label)来显示文本和图像。如果需要在标签上应用模糊效果,可以获取模糊效果对象并将其应用于标签。本文将介绍如何在 PyQt5 中获取模糊效果对象并将其应用于标签。

获取模糊效果对象

在 PyQt5 中,可以使用 QGraphicsBlurEffect 类来创建模糊效果对象。以下是创建模糊效果对象的示例代码:

from PyQt5.QtGui import QGraphicsBlurEffect

blur = QGraphicsBlurEffect()
将模糊效果应用于标签

要将模糊效果应用于标签,可以使用 setGraphicsEffect() 方法,该方法包含模糊效果对象作为其参数。以下是将模糊效果应用于标签的示例代码:

from PyQt5.QtWidgets import QLabel

label = QLabel()
label.setText("Hello World!")
label.setGraphicsEffect(blur)
示例程序

以下是一个完整的 PyQt5 标签应用模糊效果的示例程序:

from PyQt5.QtGui import QPixmap, QGraphicsBlurEffect
from PyQt5.QtWidgets import QApplication, QLabel, QWidget, QVBoxLayout


class BlurLabel(QWidget):

    def __init__(self):
        super().__init__()

        # 创建标签并设置文本和图像
        label = QLabel()
        label.setText("Hello World!")
        pixmap = QPixmap('image.png')
        label.setPixmap(pixmap)

        # 创建模糊效果对象并将其应用于标签
        blur = QGraphicsBlurEffect()
        label.setGraphicsEffect(blur)

        # 创建纵向布局并将标签添加到布局中
        layout = QVBoxLayout()
        layout.addWidget(label)

        # 设置窗口的布局和标题
        self.setLayout(layout)
        self.setWindowTitle("PyQt5 Label – 获取模糊效果对象")


if __name__ == '__main__':
    app = QApplication([])
    blur_label = BlurLabel()
    blur_label.show()
    app.exec_()

在上面的程序中,创建了一个名为 BlurLabel 的自定义窗口类,该窗口包含一个显示文本和图像的标签,并应用了模糊效果。要运行程序,请将图像文件 image.png 放在程序文件的同一目录中。