Bonjour
Je cherche des informations sur la nature et l'utilisation des gpointer user_data des fonctions calback.
Merci
Version imprimable
Bonjour
Je cherche des informations sur la nature et l'utilisation des gpointer user_data des fonctions calback.
Merci
Un gpointer comme son nom l'indique c'est juste un pointeur en faite. Dans les callback les gpointer represente n'importe quelle variable que tu voudrais envoyer a ta fonction.
Ca peut tres bien etre un int , un char , ou bien une structure que tu a creer.
Suffit juste de caster le tout , (gpointer)Mavariable. Le cast n'est qu'une precaution.
Voila j'espere que c'est ca que tu voulais savoir :D
Merci.
Mais si j'avais un exemple, je comprendrais aussi l'utilisation !
Ca te vas ? Le type gpointer n'est rien d'autre qu'un typedef sur void *, rien de plus et rien de moins donc après l'utilisation est exactement la même que sur du C standard donc rien de bien nouveau !Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14 ... void cb_func (GtkWidget * p_wid, gpointer p_data) { GList * p_list = (GList *) p_data; ... } ... GList * p_list; ... g_signal_connect ( G_OBJECT (wid), "activate", G_CALLBACK (cb_func), p_list ); ...
Salut, deux exemples intéressants:
Il ne me reste plus qu'à tester : je crois que c'est bien ce que je cherchais ;)
Merci !
Je donne des nouvelles après la sieste !
Parce qu'en plus certains peuvent prendre une sieste 8O Moi j'ai même pas le droit, la dernière que j'en ai fait une elle a duré 18h :lol:Citation:
Envoyé par troumad
Que j'aurais aimé dormir 18h...
Le paracétamol n'a pas suffit...
Bon, la musique calmant la tête, je suis arrivé à faire tourner mon programme avec vos conseils ;) : http://troumad.info/gtk.c
Il lui reste encore des problèmes : http://www.developpez.net/forums/sho...d.php?t=278096