Soyez le premier à donner votre avis sur cette source.
Snippet vu 11 479 fois - Téléchargée 37 fois
// callbacks.c // exemple d'utilisation des fonction de callbaks // // #include <gtk/gtk.h> // variable global gint count = 0; void callback(GtkWidget *Widget, gpointer *Data) { count++; gtk_label_set_text(GTK_LABEL(Data), g_strdup_printf("Vous avez clike : %d foi\n", count)); g_print("Vous avez clike : %d foi\n", count); } int main(int argc, char *argv[]) { GtkWidget *Window, *Label, *BoutonFermer, *BoutonTest, *Vbox; gtk_init(&argc, &argv); Window = gtk_window_new(GTK_WINDOW_TOPLEVEL); // cree une fenetre gtk_window_set_title(GTK_WINDOW(Window), "exemple de callbacks"); //y donne un titre Vbox = gtk_vbox_new(FALSE, 3); // creation de la vbox gtk_container_add(GTK_CONTAINER(Window), Vbox); // l'ajoute dans la fenetre Label = gtk_label_new("Exemple sur les fonctions de callback\n(fonction de rappel)"); gtk_box_pack_start_defaults(GTK_BOX(Vbox), Label); // ajoute le widget dans la vbox BoutonTest = gtk_button_new_with_label("Test"); // cree le bouton gtk_signal_connect(GTK_OBJECT(BoutonTest), "clicked", GTK_SIGNAL_FUNC(callback), Label); gtk_box_pack_start_defaults(GTK_BOX(Vbox), BoutonTest); // ajoute le widget dans la vbox BoutonFermer = gtk_button_new_with_label("Fermer"); // cree le bouton // cette fonction appel la fonction gtk_exit(); qui sort du programme des que l'evenement "clicked" // survient (qd vous appuyez sur le bouton fermer). gtk_signal_connect_object(GTK_OBJECT(BoutonFermer), "clicked", (GtkSignalFunc)gtk_exit, NULL); gtk_box_pack_start_defaults(GTK_BOX(Vbox), BoutonFermer); // ajoute le widget dans la vbox gtk_widget_show_all(Window); // affiche tout les widgets gtk_main(); return(0); }
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.