Je vais réessayer avec une structure alors.
Si je mets une structure, je passe quoi en 3ème paramètre dans la fonction gtk_timeout_add(); ?
C'est ça qui me dérange aussi je crois, je n'ai pas très bien compris.
Je vais réessayer avec une structure alors.
Si je mets une structure, je passe quoi en 3ème paramètre dans la fonction gtk_timeout_add(); ?
C'est ça qui me dérange aussi je crois, je n'ai pas très bien compris.
Tu passes un pointeur sur une donnée du type de ta structure. Tu as deux manières de procéder :
- Tu disposes d'une variable déclarée en locale. Tu passes son pointeur &variable. Il faut t'assurer de la validité de cette variable le temps de son traitement. C'est à dire que la fonction dans laquelle tu l'as déclaré ne se termine pas.
- Tu alloues un espace mémoire dans le tas (malloc) pour une donnée du type de ta structure. Ici tu ne dispose que du pointeur que tu transmets directement. Il faut seulement penser à libérer la mémoire au moment opportun.
Utilisation de Glade avec Gtk+
Code::Blocks et Gtk+ sous Windows
Programmation orientée objet avec Gtk+ v3
- N'oubliez pas de consulter les FAQ Gtk et les cours et tutoriels Gtk
Mon type de structure est Test, j'ai donc créé une variable nommée Testp de type Test.
Du coup j'ai écrit ça dans mon main :
Mais ça ne fonctionne pas. Mon programme cesse de fonctionner.
Code : Sélectionner tout - Visualiser dans une fenêtre à part gtk_timeout_add( 1000,(GtkFunction) foo, &Testp);
Si la déclaration de testp est Test Testp; alors ton écriture est correcte. Le problème vient d'ailleurs.
Utilisation de Glade avec Gtk+
Code::Blocks et Gtk+ sous Windows
Programmation orientée objet avec Gtk+ v3
- N'oubliez pas de consulter les FAQ Gtk et les cours et tutoriels Gtk
Partager