[Python] Problema refresh wx

Francesco Pischedda francesco.pischedda a gmail.com
Mar 2 Dic 2014 19:36:11 CET


Il giorno 2 dicembre 2014 19:17, Riccardo Brazzale <
riccardo.brazzale a gmail.com> ha scritto:

>
> Ciao a tutti,
>
> ho fatto uno script su windows che prende i file di una determinata
> directory e tenta l'invio via mail con un ciclo.
> Funziona ma ho il seguente problema:
> a video (wx) mostra una serie di statistiche sull'invio (numero file
> inviati, file rimanenti etc) che vengono aggiornate a ogni ciclo.
> Dopo un po che "pompa" mail,entra in funzione lo screen saver, al rientro
> il refresh dei dati non funziona più (sulla barra vedo "non risponde") ma
> in realtà il programma sta ancora funzionando.
>
> Ho visto che il problema si presenta anche se nel frattempo faccio
> qualcos'altro e poi riprendo la videata che mostra le statistiche: anche in
> questo caso il refresh della videata smette di funzionare.
>
> Idee?
>

non sapendo come hai strutturato il tuo programma posso solo pensare che
hai messo il codice di invio e aggiornamento dell'interfaccia nella
gestione dell'evento "click" del bottone "invia"; se le cose stanno così,
quando il tuo programma riprende il focus non riesce a gestire gli eventi
di repaint (probabilmente perchè nn ritorni al event loop).

Sempre basandomi sulla mia ipotesi dovresti separare il codice di invio
email da quello che gestisce l'interfaccia sincronizzando in qualche modo
le due cose per mostrare a schermo l'avanzamento dell'operazione; con pyqt
potresti usare un paio di signal con wx nn saprei che consigliare di
preciso.
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: <http://lists.python.it/pipermail/python/attachments/20141202/b3c89ae5/attachment.html>


Maggiori informazioni sulla lista Python