Vous êtes à peu près ici : Accueil  »   tutoriel PyGTK  »   PyGTK : sommaire

Chapitre 19. Temporisations, Entrées/Sorties et fonctions d'inactivité

Table des matières

19.1. Temporisations
19.2. Contrôler les Entrées/Sorties
19.3. Les fonctions d'inactivité

19.1. Temporisations

On peut se demander comment faire effectuer un travail utile à GTK quand on est dans la fonction main(). Eh bien, on dispose de plusieurs options. En utilisant la fonction suivante du module gobject, on peut créer une fonction de temporisation qui sera appelée tous les "intervalle" millisecondes.

  source_id = gobject.timeout_add(intervalle, fonction, ...)

Le paramètre intervalle représente le nombre de millisecondes entre deux appels à notre fonction. le paramètre fonction est la fonction de rappel que l'on souhaite appeler. Tout argument suivant le deuxième est transmis à la fonction comme données. La valeur de retour "source_id" est un nombre entier qui peut être utilisé pour supprimer la temporisation en appelant :

  gobject.source_remove(source_id)

Il est aussi possible d'empêcher un nouvel appel de la temporisation en renvoyant zéro ou FALSE depuis le rappel. Si on veut que le rappel soit réutilisé, il faut retourner TRUE.

Le rappel doit ressembler à ceci :

  def rappel_temporisateur(...):

Le nombre d'arguments de la fonction de rappel doit être égal au nombre d'arguments de données indiqués dans la fonction timeout_add().