IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

GTK+ avec C & C++ Discussion :

g_signal_connect et ses arguments


Sujet :

GTK+ avec C & C++

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre confirm�
    Profil pro
    Recette MOE/MOA
    Inscrit en
    Mai 2009
    Messages
    60
    D�tails du profil
    Informations personnelles :
    �ge : 45
    Localisation : France, Haute Garonne (Midi Pyr�n�es)

    Informations professionnelles :
    Activit� : Recette MOE/MOA

    Informations forums :
    Inscription : Mai 2009
    Messages : 60
    Par d�faut g_signal_connect et ses arguments
    Bonjour,

    Pour mon interface, j'utilise un �pluchage en r�gle de mon disque pour pouvoir faire une s�lection multiple de fichiers.
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    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
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    void LectureRepertoireImage (GtkWidget *Widget, gchar *NomDossier)
    {
        GtkWidget *Fenetre;
        GtkWidget *BoxExt;
        GtkWidget *BoxBoutons;
        GtkWidget *BoxCommande;
        GtkWidget *BarreDefilement;
        GtkWidget *Bouton;
    
        Fenetre = gtk_window_new(GTK_WINDOW_TOPLEVEL);
        gtk_window_set_title(GTK_WINDOW(Fenetre),"Contenu du r�pertoire Images");
        gtk_window_set_default_size(GTK_WINDOW(Fenetre), 320, 200);
        gtk_window_set_position(GTK_WINDOW(Fenetre), GTK_WIN_POS_CENTER);
    
        /*VBox ext�rieure*/
        BoxExt = gtk_vbox_new(TRUE, 0);
        /*Ajout dans la Fenetre*/
        gtk_container_add(GTK_CONTAINER(Fenetre), BoxExt);
    
        /*Creation d'une fenetre d�filable*/
        BarreDefilement = gtk_scrolled_window_new(NULL, NULL);
        /*Ajout des "d�filables" dans BoxExt*/
        gtk_container_add(GTK_CONTAINER(BoxExt), BarreDefilement);
        /*Fixation des politiques de d�filement - Aucune en horizontale et Toujours en verticale*/
        gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(BarreDefilement), GTK_POLICY_NEVER, GTK_POLICY_ALWAYS);
        /*Creation de la boite � boutons*/
        BoxBoutons = gtk_vbox_new(FALSE, 0);
        /*Ajout des proprietes d'�tirement� la boite de boutons*/
        gtk_scrolled_window_add_with_viewport(GTK_SCROLLED_WINDOW(BarreDefilement), BoxBoutons);
    
        GDir *Repertoire = g_dir_open(NomDossier, 0, NULL);
        if(Repertoire)
        {
            const gchar *NomFichier = NULL;
            while ((NomFichier = g_dir_read_name(Repertoire)))
            {
                Bouton = gtk_check_button_new_with_label(NomFichier);
                gtk_box_pack_start(GTK_BOX(BoxBoutons), Bouton, FALSE, FALSE, 0);
            }
        }
    
        /*Boite horizontale avec les boutons de commande*/
        BoxCommande = gtk_hbox_new(TRUE, 0);
        /*Ajout de cette HBox dans la BoxExt*/
        gtk_container_add(GTK_CONTAINER(BoxExt), BoxCommande);
        Bouton = gtk_button_new_from_stock(GTK_STOCK_OK);
        gtk_box_pack_start(GTK_BOX(BoxCommande), Bouton, FALSE, FALSE, 0);
        g_signal_connect(G_OBJECT(Bouton), "activate", G_CALLBACK(AjoutDiaporama), (GtkWidget *)BoxBoutons);
    
        Bouton = gtk_button_new_from_stock(GTK_STOCK_CANCEL);
        gtk_box_pack_start(GTK_BOX(BoxCommande), Bouton, FALSE, FALSE, 0);
    
        gtk_widget_show_all(Fenetre);
    }
    Mais me voil� bien emb�t�e... Comment envoyer, en m�me temps que la VBox connue sous le nom de BoxBoutons, le nom du dossier d'origine (NomDossier), pour obtenir le nom complet du fichier ?
    Dois-je changer de fonction g_signal ?

  2. #2
    Membre Expert
    Homme Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 259
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 259

  3. #3
    Membre confirm�
    Profil pro
    Recette MOE/MOA
    Inscrit en
    Mai 2009
    Messages
    60
    D�tails du profil
    Informations personnelles :
    �ge : 45
    Localisation : France, Haute Garonne (Midi Pyr�n�es)

    Informations professionnelles :
    Activit� : Recette MOE/MOA

    Informations forums :
    Inscription : Mai 2009
    Messages : 60
    Par d�faut
    Fichtre... �a n'a pas l'air simple. Merci.

  4. #4
    Membre Expert
    Homme Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 259
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 259
    Par d�faut
    Hmm j'ai relu l'entr�e de la faq, elle est un peu bizarre. L'id�e g�n�rale est que tu d�finis une structure o� tu mets les diff�rentes donn�es qui t'int�ressent.

  5. #5
    Membre confirm�
    Profil pro
    Recette MOE/MOA
    Inscrit en
    Mai 2009
    Messages
    60
    D�tails du profil
    Informations personnelles :
    �ge : 45
    Localisation : France, Haute Garonne (Midi Pyr�n�es)

    Informations professionnelles :
    Activit� : Recette MOE/MOA

    Informations forums :
    Inscription : Mai 2009
    Messages : 60
    Par d�faut
    La grande question est : faut-il que je fasse que d�claration simplissime comme sur la FAQ, ou dois-je tenter la cr�ation de nouveau type de Widget, en suivant le tutoriel de Frank Hecht (http://franckh.developpez.com/tutori...eation-widget/) ?

  6. #6
    Membre Expert
    Homme Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 259
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 259
    Par d�faut
    Ca d�pend, je choisis au cas par cas en g�n�ral Si �a a du sens de d�river un nouvel objet, autant le faire, �a peut faire gagner du temps dans d'autres cas. Si ca n'a pas trop de sens, �a sera plus une perte de temps qu'autre chose.

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. [E-00][VBA] Cr�er une fonction et ses arguments
    Par tiyolx dans le forum Macros et VBA Excel
    R�ponses: 4
    Dernier message: 05/07/2013, 09h43
  2. fonction qui modifie ses arguments d'entr�e
    Par Amergin dans le forum Caml
    R�ponses: 9
    Dernier message: 05/01/2009, 17h32
  3. [JVM] R�cup�re ses arguments
    Par GyZmoO dans le forum G�n�ral Java
    R�ponses: 2
    Dernier message: 23/01/2008, 17h28
  4. fwrite et ses argument
    Par Maria1505 dans le forum Langage
    R�ponses: 2
    Dernier message: 10/12/2006, 16h42
  5. Masquer sous unix un processus ou ses arguments
    Par alainmahe dans le forum Linux
    R�ponses: 6
    Dernier message: 08/12/2006, 13h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo