-
Affichage temps reel
Bonjour à tous,
je devellope une interface graphique pour un logiciel de test.
le probleme est que le materiel tester me renvoie des messages que je voudrais afficher à l'ecran dès leur reception, seulement je n' y arrive pas.
Existe t il un moyen pour effectuer un affichage directement apres avoir changer le contenu d'un GtkLabel par exemple?
merci d'avance:merci:
-
Ca dépend ce que t'appelle "immédiat", mais si tu changes le texte d'un label dans une fonction qui rend tout de suite la main à la mainloop gtk+, alors le changement sera "immédiat" (ie ça prendra moins de qques millisecondes)
-
Par exemple je fais un switch case avec un code qui correspond à un certain code.
le case correspondant m'envoie dans une fonction qui ecris une chaine de caractere dans un label ,celui ci à ete creer puis ajouter dans le container dans la fonction principale.
dans la fonction principale l'appel à la sous fonction ce trouve dans une boucle while qui s'arrete sur un certain code.
Il me faut donc afficher les message de maniere sequentielle.
Comment afficher ce message directement en sortant de la sous fonction?
-
Une boucle while (TRUE) dans un callback gtk+, c'est une mauvaise idée... Ca bloque effectivement tout le traitement des évènements par gtk+, y compris l'affichage. Tu peux peut être utiliser des GIOChannels pour éviter ta boucle while ? Ou un g_timeout_add ou un g_idle_add ?
-
ok.....mais je ne connais pas ces fonctions.
tu aurais des liens pour l'explication ou des exemples d'utilisation?pour ke je puisse comprendre leur utilisation et savoir où les mettres!
:merci:
note: je devellope sous windows avec VC++. juste pour info...