¿Cómo hacer un gif de carga en PyQT5?

PyQt5 es un conjunto de herramientas de GUI que se puede utilizar para desarrollar una aplicación de GUI en Python. Proporciona muchos módulos que pueden ayudar a construir varios componentes de la aplicación GUI.

Instalación:

pip install PyQt5

Enlace GIF:   https://loading.io/

Acercarse:

  • Módulo de importación
  • Crear ventana y etiquetas
  • Cargar GIF
  • Inicie GIF usando start() 
  • Agregar mecanismo para detener GIF usando stop()
  • Ejecutar código

Ejemplo:

Python3

import sys
from PyQt5 import QtCore, QtGui, QtWidgets
from PyQt5.QtGui import QMovie
from PyQt5.QtCore import Qt
  
  
class LoadingGif(object):
  
    def mainUI(self, FrontWindow):
        FrontWindow.setObjectName("FTwindow")
        FrontWindow.resize(320, 300)
        self.centralwidget = QtWidgets.QWidget(FrontWindow)
        self.centralwidget.setObjectName("main-widget")
  
        # Label Create
        self.label = QtWidgets.QLabel(self.centralwidget)
        self.label.setGeometry(QtCore.QRect(25, 25, 200, 200))
        self.label.setMinimumSize(QtCore.QSize(250, 250))
        self.label.setMaximumSize(QtCore.QSize(250, 250))
        self.label.setObjectName("lb1")
        FrontWindow.setCentralWidget(self.centralwidget)
  
        # Loading the GIF
        self.movie = QMovie("loader.gif")
        self.label.setMovie(self.movie)
  
        self.startAnimation()
  
    # Start Animation
  
    def startAnimation(self):
        self.movie.start()
  
    # Stop Animation(According to need)
    def stopAnimation(self):
        self.movie.stop()
  
  
app = QtWidgets.QApplication(sys.argv)
window = QtWidgets.QMainWindow()
demo = LoadingGif()
demo.mainUI(window)
window.show()
sys.exit(app.exec_())

Producción:

La pantalla de carga de gifs.

Publicación traducida automáticamente

Artículo escrito por PranjalGoyal 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 *