Mise à jour de la fenêtre graphique

Mise à jour de la fenêtre graphique

by Jérémie Veuthey -
Number of replies: 4

Bonjour,

Lorsque nous lançons l'exécution de notre programme, tout s'actualise normalement.

Pourtant, pour que l'affichage se mette à jour, nous sommes à chaque fois obligé de sortir de la fenêtre, cliquer sur une autre, puis recliquer sur la fenêtre d'affichage pour voir la situation finale apparaître sans voir les étapes intermédiaires.

Serait-ce un problème dans un gui ?

merci pour votre réponse,

bonne fin de journée

Jérémie Veuthey

In reply to Jérémie Veuthey

Mise à jour de la fenêtre graphique

by Josquin Pascal Tille -
Tu trouveras dans sous la semaine 6 le cours « programmation par événement ». Sur la slide 5 il y a la fonction refresh qui permet de mettre à jour l’affichage.
In reply to Jérémie Veuthey

Re: Mise à jour de la fenêtre graphique

by Victor Regly -

Bonjour,

ce sujet n'a pas résolu mon problème.

Lorsque j'appuie sur start ou step, je dois cliquer sur le terminal et revenir pour voir une évolution.

En recherchant un peu, je me suis rendu compte que lorsque j'appelle refresh(); l'argument win = nullptr.

Soit en d'autres termes, l'argument nul est renvoyé par get_window() ... Et je ne sais pas résoudre ce problème.

Merci pour votre réponse,


Bonne soirée,


Victor Regly


In reply to Victor Regly

Re: Mise à jour de la fenêtre graphique

by Bryan Lucas Kheirallah -

Bonjour,

Nous nous sommes heurtés au même problème (de notre coté, à cause de l'absence d'instance de MyArea). Nous avons "résolu" ce problème en utilisant la fonction void queue_draw (http://gtk.10911.n7.nabble.com/How-to-refresh-DrawingArea-td39908.html). Pour appeler cette fonction, pas besoin de la prototyper au préalable (ou même de la définir!), il suffit simplement d'écrire "queue_draw();" à la ligne où la mise à jour est voulue. Ca marche - étonnament - bien!

Bonne soirée,

Bryan Lucas Kheirallah

In reply to Victor Regly

Re: Mise à jour de la fenêtre graphique

by Ugo Damiano -

Bonsoir,

Peut-être que ce lien peut vous aider:

http://gtk.10911.n7.nabble.com/get-window-returns-NULL-td31407.html

En résumé il dit que get_window sur un objet non dessiné renvoie null. Donc si vous tentez par exemple de faire un get_window dans le constructeur cela risque de ne pas marcher, cependant lors d'un signal ou plus simplement une fois que l'application a dessiné l'objet il est possible d'appeller get_window.

Bonne soirée