Accueil
Rechercher:
sur developpez.com sur les forums
Forums | Tutoriels | F.A.Q's | Participez | Hébergement | Contacts
Accueil Conception Java DotNET Visual Basic  C  C++ Delphi Eclipse MS-Office SQL & SGBD Oracle  4D  Business Intelligence
Club Emploi Blogs   TV   Dév. Web PHP XML Python Autres 2D-3D-Jeux Sécurité Windows Linux PC Mac
FORUM PYTHON F.A.Q PYTHON TUTORIELS PYTHON SOURCES PYTHON OUTILS PYTHON LIVRES PYTHON
Chapitre 19. Temporisations, Entrées/Sorties et fonctions d'inactivité

Chapitre 19. Temporisations, Entrées/Sorties et 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().

Responsable bénévole de la rubrique Python : Guillaume Duriaud - Contacter par EMail :
Vos questions techniques : forum d'entraide Python - Publiez vos articles, tutoriels et cours
et rejoignez-nous dans l'équipe de rédaction du club d'entraide des développeurs francophones
Nous contacter - Copyright © 2000-2008 www.developpez.com - Legal informations.