Ventana de aplicación de actualización (repintado) (Python)
-
27-10-2019 - |
Pregunta
LS, estoy desarrollando una aplicación que lee texto desde una página web. Mientras que el texto se procesa en la aplicación, la ventana de la aplicación (GUI) muestra que "la aplicación no responde" (traducida de un mensaje de advertencia holandés). Sin embargo, la aplicación no está congelada porque la veo imprime en la ventana de la consola. La aplicación GUI está diseñada en QT Designer y se convierte en el código Python 2.7 en Win7 64 bits. ¿Cómo puedo obligar a la aplicación a actualizar la ventana y la actualización? Gracias
Solución
Aquí hay algunas formas de hacerlo:
Llame a su función que consume tiempo en separación
thread
o creartimer
. Ejemplo básico conQTimer.singleShot
:QTimer.singleShot(1, your_time_consuming_function)
Llamar
QCoreApplication.processEvents()
en su bucle de procesamiento de texto.
Si todo el tiempo se dedica a buscar la página, considere usar temporizador o hilo.