Boite de dialogue de selection de fichier [code en c] [gcc]

Contenu du snippet


Source / Exemple :


#include <stdio.h>
#include <gtk/gtk.h>

void file_selectioned (GtkWidget *w, GtkFileSelection *fs)
{
  //affiche le nom du fichier selectionner, apres validation, dans la console
  g_print ("%s\n", gtk_file_selection_get_filename (GTK_FILE_SELECTION (fs)));
}

//Detruit la fenetre si elle est fermer
void destroy (GtkWidget *widget, gpointer *data)
{
  gtk_main_quit ();
}

int main (int argc, char *argv[])
{
  GtkWidget *filewiew; //Declare un widget nome fileview
  
  gtk_init (&argc, &argv); //Initalise GTK
  
  /* Création d'un widget de sélection de fichier. */
  filewiew = gtk_file_selection_new ("Selectionner un fichier"); //Creer une boite de selection de fichier
  
  //Ajoute un signal a l'objet fileview, si la fenetre est fermer alors on la detruit
  gtk_signal_connect (GTK_OBJECT (filewiew), "destroy", 
		      (GtkSignalFunc) destroy, &filewiew);
  
  //Ajoute un signal: si un fichier est selectionner et que le bouton Ok est cliquer alors on appel la fonction file_selectioned 
  gtk_signal_connect (GTK_OBJECT (GTK_FILE_SELECTION (filewiew)->ok_button),
		      "clicked", (GtkSignalFunc) file_selectioned, filewiew );
  
  //Ajoute le signal: Si on clique sur le bouton cancel on detruit l'obket  
  gtk_signal_connect_object (GTK_OBJECT (GTK_FILE_SELECTION (filewiew)->cancel_button),
			     "clicked", (GtkSignalFunc) gtk_widget_destroy,
			     GTK_OBJECT (filewiew));
  
  //Affiche la boite 
  gtk_widget_show(filewiew);
  gtk_main (); //rend la main au programme
  return 0;
}

A voir également

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.