Python - Crear una ventana de desenfoque transparente

CorePress2024-01-25  12

Estoy usando Python 3.9.1 y PyQt6. Ahora quiero crear una ventana con fondo borroso, que debería verse como a continuación:

Demostración de fondo de ventana borrosa

Sería útil si alguien me proporcionara un código para esto.

Tómese su tiempo para leer cómo hacer buenas preguntas y cómo comprobarlas, y tenga en cuenta que en StackOverflow los usuarios realmente no preguntan "¿Alguien puede decirme cómo puedo hacer xyz?". Si tiene algún código que no funciona como se esperaba, puede proporcionar una reproducción mínima.ejemplo útil y estaremos encantados de ayudarle; de ​​lo contrario, estas preguntas no obtendrán una respuesta general.

– musicamante

28/03/2021 a las 15:24

Además de eso, en este caso específico, no puedes hacer esto directamente con PyQt y en su lugar necesitas usar la API de la plataforma (suponiendo que te permitan hacerlo).

– musicamante

28/03/2021 a las 15:25



------------------------------------

el verdadero negocio:

python -mpipinstalar BlurWindow

import sys
from PySide2.QtWidgets import *
from PySide2.QtCore import *

from BlurWindow.blurWindow import blur



class MainWindow(QWidget):
    def __init__(self):
        super(MainWindow, self).__init__()
        self.setAttribute(Qt.WA_TranslucentBackground)
        self.resize(500, 400)

        blur(self.winId())

        self.setStyleSheet("background-color: rgba(0, 0, 0, 0)")



if __name__ == '__main__':
    app = QApplication(sys.argv)
    mw = MainWindow()
    mw.show()
    sys.exit(app.exec_())

0



------------------------------------

Bien, tomado de KDE Plasma, ahora es fácil hacer esto con Python.

Para obtener más información, consulte esto: mírelo con atención

Necesitarás utilizar la biblioteca proporcionada llamada fluentapp -

Para proyecto hecho con python - tamaño 95 mb

Deberá extraerlo del proyecto y utilizar la guía de referencia proporcionada. Ya lo probé, es genial y realza la belleza de tu aplicación.

La sintaxis es sencilla, p. -

import fluentapp.pyqt6.windowtools as wingui

wingui.setWindowAlpha("0.5") # Make window transparent

wingui.addGaussianBlur(radius=20, cover= False) 

#if you want to use additional layer for dark and light theme, you can set cover True for dark.
 
     Your Code Here ---- 
Respondido

27 de abril de 2021 a las 11:33

Akash Sharma

Akash Sharma

9

2

2 insignias de bronce

Su guía para un futuro mejor - libreflare
Su guía para un futuro mejor - libreflare