G_signal

Signaler
Messages postés
20
Date d'inscription
jeudi 5 août 2004
Statut
Membre
Dernière intervention
20 septembre 2004
-
Messages postés
20
Date d'inscription
jeudi 5 août 2004
Statut
Membre
Dernière intervention
20 septembre 2004
-
Bonjour,
J'ai un problème, j'ai créer un bouton puis j'ai mis un g_signal mais je ne sais pas comment faire pour mettre une fonction dans le g_signal .

Par exemple que dès que l'on clique sur le bouton sa fasse :
i = 0;

Comment faire ?
Ya t'il moyen d'utiliser autre chose que g_signal ?

8 réponses

Messages postés
787
Date d'inscription
samedi 8 juin 2002
Statut
Membre
Dernière intervention
7 juin 2007
1
Il faut définir une callback avec g_signal_connect, et dans cette callback mettre ton code i = 0, si mes souvenirs de GTK+ sont encore bons...
Messages postés
20
Date d'inscription
jeudi 5 août 2004
Statut
Membre
Dernière intervention
20 septembre 2004

D'accord, merci sa marche maintenant dans mon g_signal j'aimerais pouvoir inserer une fonction :
par exemple :

g_signal_connect(G_OBJECT(pButton[1]), "clicked", G_CALLBACK( gtk_label_set_text(GTK_LABEL(pLabel), "new")), NULL);

mais voilà l'erreur qu'il me met :

test.cpp: Dans function « int main(int, char**) »:
test.cpp:10: error: cannot convert `
gtk_label_set_text(g_type_check_instance_cast(pLabel, gtk_label_get_type()),
"new")' from type `void' to type `void (*)()'

Comment faire le plus simplement possible stp ?
Messages postés
787
Date d'inscription
samedi 8 juin 2002
Statut
Membre
Dernière intervention
7 juin 2007
1
Appelle cette fonction dans ta callback, çà sera plus propre.
Messages postés
20
Date d'inscription
jeudi 5 août 2004
Statut
Membre
Dernière intervention
20 septembre 2004

dans :
g_signal_connect(G_OBJECT(pButton[1]), "clicked", G_CALLBACK( gtk_label_set_text(GTK_LABEL(pLabel), "new")), NULL);

la fonction gtk_label... et dans le callback non ?
Messages postés
787
Date d'inscription
samedi 8 juin 2002
Statut
Membre
Dernière intervention
7 juin 2007
1
Non, là tu définis gtk_label_set_text comme étant la callback, hors le prototype d'une callback ne correspond pas avec le sien...
Messages postés
20
Date d'inscription
jeudi 5 août 2004
Statut
Membre
Dernière intervention
20 septembre 2004

je ne comprend pas très bien comment on fait, tu pourrait me faire un exemple stp ?
Messages postés
787
Date d'inscription
samedi 8 juin 2002
Statut
Membre
Dernière intervention
7 juin 2007
1
Y'en a dans la doc, sur google en français, cherche "tutoriaux gtk fr"...
Messages postés
20
Date d'inscription
jeudi 5 août 2004
Statut
Membre
Dernière intervention
20 septembre 2004

Ben j'en trouve pas en français a part gtk-fr qui n'explique pas bien justement pour ça donc si tu peu juste me montrer comment tu fais stp sa m'aiderait énormement !

Merci