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 :

Problème avec des listes déroulantes liées


Sujet :

GTK+ avec C & C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2008
    Messages : 7
    Par défaut Problème avec des listes déroulantes liées
    Bonjour,

    En fait je souhaiterai savoir s'il est possible d'actualiser le contenu d'une liste déroulante en fonction de la réponse donnée dans une autre liste déroulante.

    J'ai essayer en utilisant la fonction "gtk_combo_box_get_active" mais je dois appuyer sur un bouton afin de lancer une nouvelle fonction qui actualise la 2eme liste.

    Or je souhaiterai que tout s'effectue dans une seule fonction afin de faciliter la transmission de certaines variables.

    D'avance merci pour les réponses.

    Cordialement

  2. #2
    Expert confirmé
    Avatar de gerald3d
    Homme Profil pro
    Conducteur de train
    Inscrit en
    Février 2008
    Messages
    2 309
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Conducteur de train
    Secteur : Transports

    Informations forums :
    Inscription : Février 2008
    Messages : 2 309
    Billets dans le blog
    5
    Par défaut
    Tu peux toujours voir du côté du signal "changed" :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    The "changed" signal
     
    void                user_function                      (GtkComboBox *widget,
                                                            gpointer     user_data)      : Run Last
     
    The changed signal is emitted when the active item is changed. The can be due to the user selecting a different item from the list, or due to a call to gtk_combo_box_set_active_iter(). It will also be emitted while typing into a GtkComboBoxEntry, as well as when selecting an item from the GtkComboBoxEntry's list.
     
    widget :
    	the object which received the signal
     
    user_data :
    	user data set when the signal handler was connected.
     
    Since 2.4

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2008
    Messages : 7
    Par défaut
    Ca marche. Merci.

    Mais je me trouve face à un nouveau problème.
    Je voudrais récupérer la valeur de la variable lu par gtk_combo_box_get_active dans la fonction où g_signal_connect a été appelé.

    Mais encore merci pour la 1ere réponse.

  4. #4
    Expert confirmé
    Avatar de gerald3d
    Homme Profil pro
    Conducteur de train
    Inscrit en
    Février 2008
    Messages
    2 309
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Conducteur de train
    Secteur : Transports

    Informations forums :
    Inscription : Février 2008
    Messages : 2 309
    Billets dans le blog
    5
    Par défaut
    dans le callback tu récupère le GtkComBox d'où est parti le signal. Donc gtk_combo_box_get_active(); doit fonctionner. Maintenant si c'est sur le deuxième GtkComboBox alors il faut le transmettre avec le g_signal_connect(); ( En lieu et place de la dernière variable NULL).

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2008
    Messages : 7
    Par défaut
    Je crois que je me suis mal exprimé.
    En effet dans mon signal_connect je passe en paramètre ma combo box.
    Le gtk_combo_get_active fonctionne sans problème. Et cela me permets d'actualiser ma combo box mais je voudrais aussi récupérer la valeur de celui-ci dans la fonction où j'ai effectuer la signal_connect pour pouvoir l'utiliser à posteriori.
    J'espère avoir été un peu plus clair

  6. #6
    Expert confirmé
    Avatar de gerald3d
    Homme Profil pro
    Conducteur de train
    Inscrit en
    Février 2008
    Messages
    2 309
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Conducteur de train
    Secteur : Transports

    Informations forums :
    Inscription : Février 2008
    Messages : 2 309
    Billets dans le blog
    5
    Par défaut
    Je crois comprendre mais je pense que cela n'est pas réalisable. Il me semble qu'en rentrerai dans une boucle infinie ou un truc du genre. D'autres pourront infirmer ou pas. Vu que code est exécuter par interruption, à quel moment la lecture de ton combobox va-t-elle se faire?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AJAX] avec 3 listes déroulantes liées php+xhtml+css+javascript+ajax
    Par Invité dans le forum Général JavaScript
    Réponses: 10
    Dernier message: 27/12/2008, 15h54
  2. [Débutant] problème avec une liste déroulante
    Par stan21 dans le forum Access
    Réponses: 3
    Dernier message: 12/07/2006, 14h52
  3. Pb avec 3 listes déroulantes liées
    Par barthez dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 06/06/2006, 23h34
  4. Problème avec des listes et des variables
    Par Knuckles dans le forum Général Python
    Réponses: 3
    Dernier message: 09/05/2006, 18h24

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