C++ : Petit Problème

Résolu
Bonjour,
j'essaye de créer un petit programme d'installation.
Pour cela, j'ai créer des "QWidget" nommer etape1, etape2, etape3...
Au départ, qu'un seul "QWidget" est visible : etape1.
Quand on clique sur "Suivant >", la fonction suivante s'exécute :
=========================Code:C++======================
  if(etape == 1)
    {
        ui->etape1->setVisible(false);
        ui->etape2->setVisible(true);
        ui->precedent->setEnabled(true);
        etape = 2;
    } else {
        if(etape == 2)
        {
            ui->etape2->setVisible(false);
            ui->etape3->setVisible(true);
            etape = 3;
        }
    }

======================================================
(Pour l'instant je n'ai créer que 3 étapes)
Mais quand clique sur suivant, il saute l'étape 2 (j'ai fait des test, et il passe de l'étape 1 à l'étape 2, puis à l'étape 3, sans attendre).
Quelqu'un saurait me réparer la petite erreur qui se cache ???
Merci !
Configuration: Ubuntu
Firefox 3.0.14

5 réponses

  1. 'Soir,

    Probablement ton code exécute plusieurs fois les lignes postées lorque tu cliques sur "Suivant". Tout simplement.

    ++
    0
    1. Comment réparer l'erreur ??
      Pourtant, quand je clique sur Précédent, il retourne à l'étape 2.
      0
      1. Comment réparer l'erreur ??
        Vérifie d'abord que c'est bien le cas en exécutant le code avec un point d'arrêt (ou avec un message à la console juste avant ton premier "if")

        Pourtant, quand je clique sur Précédent, il retourne à l'étape 1.
        Ceci dépend du code exécuté lors de l'appui sur le bouton "Précédent".
        0
        1. Oh PU***N...
          Je vient de m'apercevoir que la fonction "suivant()", passe d'abord par la fonction "verif()", et la, j'ai en effet fait une grosse erreur !
          Désolé pour le "dérangement" et merci quand même a tous !
          0