[Résolu] passer plusieurs argument à une fonction callback
Bonjour,
Je désire passer plusieurs arguments à ma fonction de callback .
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
| void parcourir(GtkWidget *pEntry, gpointer data){
GtkWidget *pFileChooser;
gchar *sFile;
pFileChooser = gtk_file_chooser_dialog_new("Fichier ...",
NULL,
GTK_FILE_CHOOSER_ACTION_OPEN,
GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
GTK_STOCK_OPEN, GTK_RESPONSE_OK,
NULL);
/* On limite les actions a cette fenetre */
gtk_window_set_modal(GTK_WINDOW(pFileChooser), TRUE);
/* Affichage fenetre */
switch(gtk_dialog_run(GTK_DIALOG(pFileChooser)))
{
case GTK_RESPONSE_OK:
/* Recuperation du chemin */
sFile = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(pFileChooser));
printf("%s\n",sFile);
g_free(sFile);
break;
default:
break;
}
gtk_widget_destroy(pFileChooser);
} |
En effet, je voudrais reccuperer le sFile dans mon programme principale.
J'ai essayé:
Code:
1 2 3
|
char * fic;
g_signal_connect(G_OBJECT(pBtn[2]), "clicked", G_CALLBACK(parcourir),fic); |
Mais sans succès.
Comment pourrais je faire?
Merci beaucoup.