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

Discussion :

problème dans l'utilisation de QButtonGroup

  1. #1
    Membre confirmé
    Inscrit en
    Mai 2008
    Messages
    81
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 81
    Par défaut problème dans l'utilisation de QButtonGroup
    bonjour,
    Je n'arrive pas a comprendre pourquoi le code suivant ne fonctionne pas!
    je veux faire de sorte que lorsque je click sur un des bouton(tcheckable) les autre passeront a checked(false)

    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
    ..............................
    Group = new QButtonGroup;
            connect(Group, SIGNAL(buttonClicked(int)),
                 this, SLOT(GroupClicked(int)));
     
            Group->setExclusive(false);
            Group->addButton(Button_1);
            Group->addButton(Button_2);
            Group->addButton(Button_3);
            Group->addButton(Button_4);
            Group->addButton(Button_5);
            Group->addButton(Button_6);
            Group->addButton(Button_7);
            Group->addButton(Button_8);
            Group->addButton(Button_9);
            Group->addButton(Button_10);
            Group->addButton(Button_11);
     
    void Simulateur::GroupClicked(int id)
    {
       QList<QAbstractButton *> buttons = Group->buttons();
         foreach (QAbstractButton *button, buttons) {
         if (Group->button(id) != button)
             button->setChecked(false);
         }
    }
    sachant que je n'ai aucun message d'erreur mais ça fonctionne pas
    merci d'avance

  2. #2
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    27 060
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 27 060
    Billets dans le blog
    142
    Par défaut
    Le setExlusive à true, ne simplifirai pas votre problême O_o ?
    Et il n'y aurai plus besoin de slot.

    POur répondre à votre question, dans votre initialisation, vous ne connecter pas la fonction ( qui doit être un SLOT ) avec le signal clicked
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  3. #3
    Membre confirmé
    Inscrit en
    Mai 2008
    Messages
    81
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 81
    Par défaut
    j'ai pas bien compris votre réponse
    pouvez-vous donner plus d'explication?

  4. #4
    Membre expérimenté Avatar de cayou66
    Inscrit en
    Décembre 2008
    Messages
    286
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Décembre 2008
    Messages : 286
    Par défaut
    Et bien, le setExclusive permet de faire comme des boutons radios il me semble.
    On clique sur un, les autres se "décliquent", et c'est ça que tu souhaites faire non?

    Citation Envoyé par LittleWhite
    POur répondre à votre question, dans votre initialisation, vous ne connecter pas la fonction ( qui doit être un SLOT ) avec le signal clicked
    Pourtant si:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    connect(Group, SIGNAL(buttonClicked(int)),
                 this, SLOT(GroupClicked(int)));

  5. #5
    Membre confirmé
    Inscrit en
    Mai 2008
    Messages
    81
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 81
    Par défaut
    setExclusive(true) a reglé mon problème
    merci!

  6. #6
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    27 060
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 27 060
    Billets dans le blog
    142
    Par défaut
    Pardon pour le connect.
    J'ai l'habitude de le mettre après avoir initialiser les composants, donc j'avais que regarder la fin du code :s
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  7. #7
    Membre confirmé
    Inscrit en
    Mai 2008
    Messages
    81
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 81
    Par défaut
    ya pas de soucis

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 13/04/2008, 00h01
  2. Problème dans l'utilisation d'un tableau
    Par NoiBe dans le forum Collection et Stream
    Réponses: 5
    Dernier message: 16/05/2007, 16h19
  3. problème dans l'utilisation de g_access()
    Par bit_o dans le forum GTK+ avec C & C++
    Réponses: 18
    Dernier message: 02/03/2007, 14h57
  4. Problème dans l'utilisation du WebBrowser
    Par MCShiff dans le forum Windows Forms
    Réponses: 2
    Dernier message: 10/01/2007, 12h52
  5. probléme dans l'utilisation d'un tableau
    Par hamoudasafira dans le forum C++
    Réponses: 10
    Dernier message: 13/12/2006, 08h50

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