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.

È stato utile?

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.

Vedi qui: http: //graphics.sci.ubu. ac.th/api/pygtk/tutorials/pygtk2tutorial/ch-TimeoutsIOAndIdleFunctions.html

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.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top