Etiqueta PyQt5: obtener el objeto de efecto de desenfoque

En este artículo, veremos cómo podemos obtener un objeto de efecto de desenfoque de la etiqueta de forma predeterminada. No hay efecto de desenfoque en la etiqueta, aunque podemos crear un efecto de desenfoque y luego agregarlo a la etiqueta con la ayuda del setGraphicsEffectmétodo.

Para hacer esto tenemos que hacer lo siguiente –

1. Cree una etiqueta
2. Establezca geometría en la etiqueta
3. Cree un objeto QGraphicsBlurEffect
4. Agregue este objeto a la etiqueta con la ayuda del método setGraphicsEffect
5. Obtenga el objeto de opacidad con la ayuda del método graphicsEffect

Nota: este objeto tiene las mismas propiedades que el objeto original

Sintaxis:

# creating a blur effect
blur_effect = QGraphicsBlurEffect()

# adding blur effect to the label
label.setGraphicsEffect(blur_effect)

# getting the blur object
object = label.graphicsEffect()

A continuación se muestra la implementación.

# importing libraries
from PyQt5.QtWidgets import * 
from PyQt5 import QtCore, QtGui
from PyQt5.QtGui import * 
from PyQt5.QtCore import * 
import sys
  
  
class Window(QMainWindow):
  
    def __init__(self):
        super().__init__()
  
        # setting title
        self.setWindowTitle("Python ")
  
        # setting geometry
        self.setGeometry(100, 100, 600, 400)
  
        # calling method
        self.UiComponents()
  
        # showing all the widgets
        self.show()
  
    # method for widgets
    def UiComponents(self):
  
        # creating label
        label = QLabel("Label", self)
  
        # setting geometry to the label
        label.setGeometry(200, 100, 150, 60)
  
        # setting alignment to the label
        label.setAlignment(Qt.AlignCenter)
  
        # setting font
        label.setFont(QFont('Arial', 15))
  
        # setting style sheet of the label
        label.setStyleSheet("QLabel"
                            "{"
                            "border : 2px solid green;"
                            "background : lightgreen;"
                            "}")
  
        # creating a blur effect
        self.blur_effect = QGraphicsBlurEffect()
  
        # adding blur effect to the label
        label.setGraphicsEffect(self.blur_effect)
  
        # result label
        result = QLabel(self)
  
        # setting geometry of the result label
        result.setGeometry(200, 200, 300, 30)
  
        # getting the blur object
        object = label.graphicsEffect()
  
        # setting text to the result label
        result.setText(str(object))
  
  
# create pyqt5 app
App = QApplication(sys.argv)
  
# create the instance of our Window
window = Window()
  
# start the app
sys.exit(App.exec())

Producción :

Publicación traducida automáticamente

Artículo escrito por rakshitarora y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *