GTK Scrollbar dans une boucle

Crazy_Joe Messages postés 47 Date d'inscription samedi 2 juillet 2005 Statut Membre Dernière intervention 3 janvier 2008 - 13 oct. 2005 à 22:48
Crazy_Joe Messages postés 47 Date d'inscription samedi 2 juillet 2005 Statut Membre Dernière intervention 3 janvier 2008 - 13 oct. 2005 à 23:25
Bonjour,



Pour afficher un pourcentage effectué d'une opération, j'utilise une
scrollbar (interface en GTK) dans une boucle avec la fonction:
gtk_progress_bar_set_fraction (GTK_PROGRESS_BAR (progressbar),i/10);
mais ça ne m'affiche rien alors que si je le fait en dehors de la
boucle cela m'affiche quelque chose mais l'opération est finie donc
cela ne sert plus à grand chose.



Quelqu'un peut me dire pourquoi ça n'affiche rien quand cette fonction est dans une boucle ? Merci.

2 réponses

MrdJack Messages postés 146 Date d'inscription jeudi 22 avril 2004 Statut Membre Dernière intervention 8 mars 2008 2
13 oct. 2005 à 23:19
Hé bien, mes connaissance GTK sont assez basiques, mais ton probleme vient

surrement du fait que ton controle est rafraichit lorsque tu fais appel à gtk_main().

en effet, tout ce que tu peux mettre dans une boucle n'y changera rien...



je m'explique : tant que tu ne renverra pas la main à gtk avec
gtk_main() sa boucle evenementielle, toutes les modifs que tu fais sur
gtk restent virtuelles...

donc au cours de l'exécution de ta boucle, tes controles sont figé mais leur état est modifié !

en gros là tu modifies plein de fois ton progress bar mais tu ne l'actualise qu'a la fin.



essaye de renvoyer la main a gtk dans ta boucle juste avant de reboucler (a la fin!)



j'espere que mon niveau bas de gamme t'aideras !



@++
0
Crazy_Joe Messages postés 47 Date d'inscription samedi 2 juillet 2005 Statut Membre Dernière intervention 3 janvier 2008
13 oct. 2005 à 23:25
j'appelle gtk_main() à chaque fois que je modifie la progressbar mais sans résultat.
0
Rejoignez-nous