Au lieu de tester une variable, la mise à jour devient automatique.Quelle différence avec une mise à jour d'une variable ?
Tyrtamos
Au lieu de tester une variable, la mise à jour devient automatique.Quelle différence avec une mise à jour d'une variable ?
Tyrtamos
Hu?!?
La mise à jour est aussi automatique avec l'exemple GTK proposé.
La différence est que le thread connaît les widgets GTK qui le concernent alors qu'avec les slots Qt, lorsqu'il fait un emit il pourra y avoir 0, 1, 10 widgets mis à jour sans que le thread n'ait à le savoir.
C'est ce qui rend le code "plus souple".
Ceci dit, si l'affichage doit aller récupérer ses données en base, le seul intérêt de mettre la thread de récupération des données et d'affichage dans un même process, c'est juste pour signaler l'arrivée de nouvelles données.
Comme les enregistrements sont horodatés, savoir s'il y en a des nouveaux est assez simple...
- W
Bonsoir,
Je ne connais pas gtk mais s'il existe un équivalent du .after Tkinter une solution sans thread existe.
Yes it does
En fait, ces frameworks ne sont que des engins à traiter des événements et dispatcher les actions correspondantes.
- W
Bonjour,
Encore plus facile donc.
C'est a se demander l'utiliter d'un thread dans ce cas (et en général) avec gtk, si ce n'est pour les traitements lourds bien sur.
Pour cFranssen:
Pour répéter ta fonction de lecture toutes les minutes tu dois importer gobject et utiliser .timeout_add.
Soit:
@+
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 # -*- coding:Utf-8 -*- import gtk import ws3500 import sqlite3 import gobject .... def lecture(): #code de la lecture des données return True gobject.timeout_add(60000, lecture) gtk.main()
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager