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

Interfaces Graphiques Discussion :

Menu et boucle


Sujet :

Interfaces Graphiques

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Février 2010
    Messages
    129
    Détails du profil
    Informations forums :
    Inscription : Février 2010
    Messages : 129
    Par défaut Menu et boucle
    Bonsoir les amis
    Voici un menu que j'ai proposé

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    pr=menu('Choix ','choix1',...
            'choix2','choix3');
    J'ouvre ensuite une boite de dialogue dont tous paramètres d'entrée sont prédéfinis

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    answer=inputdlg(prompt,name,numlines);
    k=str2num(answer{1}); % mémoriser la variable saisie
    Pour chaque choix fait (valeur de la variable pr),
    afficher une fenetre d'erreur et réouvrir la fenetre de dialogue
    si la valeur retournée k vérifie la condition while

    code Matlab
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    if pr==1
        while k>condition
     hwarn=warndlg(' valeur incorrecte ','File Error');
     % Réouvrir la boite de dlg pour changer la val saisie
    answer=inputdlg(prompt,name,numlines);
    k=str2num(answer{1});% mémoriser la variable saisie
    end
    end
    Le problème est que même si k ne vérifie pas la condition, le programme ne sort pas de sa boucle
    et la fenetre de dialogue ainsi que la fenetre de warning s'ouvrent toujours. Pourquoi le programme ne sort pas si la condition n'est pas réalisée?
    Merci d'avance

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonsoir,

    Le problème vient du fait que
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    hwarn=warndlg(' valeur incorrecte ','File Error');
    n'attend pas que tu aie appuyé sur le bouton OK pour passer à la ligne de code suivante, cela continue.
    Utilise plutôt:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    uiwait(warndlg(' valeur incorrecte ','File Error'));
    Par contre j'arrive bien à sortir de la boucle. As-tu vérifié la valeur de ta variable condition?

  3. #3
    Membre confirmé
    Inscrit en
    Février 2010
    Messages
    129
    Détails du profil
    Informations forums :
    Inscription : Février 2010
    Messages : 129
    Par défaut
    Bonjour Jérome
    Je trouve uiwait () très adéquate merci infiniment
    Pour le test oui j'ai revu ma condition
    Mes remerciemnts

  4. #4
    Membre confirmé
    Inscrit en
    Février 2010
    Messages
    129
    Détails du profil
    Informations forums :
    Inscription : Février 2010
    Messages : 129
    Par défaut
    rebonjour
    Grand merci Jérome
    Tout a si merveilleusement marché.ccool:

    Je pense que le problème était dans le La journée démarre bien je pense :-)

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

Discussions similaires

  1. Choix menu déroulant et boucle
    Par DjChat dans le forum Langage
    Réponses: 3
    Dernier message: 31/03/2009, 13h53
  2. Menu deroulant (labelPopupMenu) et boucle
    Par ddyhia dans le forum Général Java
    Réponses: 2
    Dernier message: 13/03/2009, 15h39
  3. [Spip] Filtre de boucles pour menu
    Par elekaj34 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 1
    Dernier message: 02/08/2008, 12h55
  4. [MySQL] Affichage du menu en boucle après requête effectuer
    Par leloup84 dans le forum PHP & Base de données
    Réponses: 14
    Dernier message: 08/02/2006, 14h44
  5. [Boucle Infinie] pour un menu
    Par NhyMbuS dans le forum C++
    Réponses: 5
    Dernier message: 20/07/2005, 09h14

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