Disabilitazione temporizzata del pulsante in pygtk
Domanda
Voglio mostrare una finestra di dialogo con un pulsante OK che è disabilitato per un breve periodo di tempo (forse 5 secondi). Gli altri pulsanti dovrebbero comunque essere reattivi durante questo periodo.
Soluzione
Per questo è necessario un timeout GTK +. Prima di tutto lascia che il pulsante sia disabilitato. Il timeout chiamerà una funzione per abilitare il pulsante.
Per motivi di usabilità, per favore, non dovrebbe essere visibile all'utente che è in esecuzione un timer. Puoi farlo contando, come " OK (5) " ;, " Ok (4) " ecc. fino all'attivazione del pulsante.
L'idea è di impostare il timeout su 1 secondo (1000 ms). Ogni volta che viene richiamata la richiamata, si cambia l'etichetta del pulsante e si restituisce VERO. Quando il callback viene chiamato la quinta volta, lo si abilita e si restituisce FALSE. Ciò rimuoverà il timeout.