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

MATLAB Discussion :

Problème d'ouverture d'un répertoire


Sujet :

MATLAB

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 65
    Par défaut Problème d'ouverture d'un répertoire
    Bonjour, j'ai encore un problème...
    Merci d'avance pour vos réponses

    A l'origine, je faisais appel à un répertoire comme ceci dans ma fonction:
    rep='G:\images\';
    files=dir(rep); % contenu du repertoire passe en argument
    Mais maintenant j'aurais aimé que ce soit l'utilisateur qui rentre le nom du répertoire. Voici mon code:
    rep='G:\images\';
    new=0;
    while (new==0)
    prompt={ 'Path du répertoire contenant les images indexées :'};
    name='1. Configuration pour la reconstitution 3D';
    numlines=1;
    defaultanswer={rep};
    options.Resize='on';
    options.WindowStyle='normal';
    options.Interpreter='tex';
    answer=inputdlg(prompt,name,numlines,defaultanswer,options);

    if (not(isempty(answer)==1))
    rep = answer{1,1};
    end
    end
    Mais le problème est que je n'arrive pas à sortir de ma boucle.
    Je ne sais pas si cette méthode marche...

    Peut être doige faire un uigetfile ?

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2007
    Messages : 9
    Par défaut
    Je ne vois pas dans ton code l'endroit ou tu modifies ta variable new de controle de boucle, donc je pense que si tu modifies new quand toutes les conditions souhaitee sont remplies, tu sortiras de ta boucle.

    pour l'instant effectivement, ta boucle equivaut a :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    while(1)
     
    ....
     
    end
    Ce qui n'est pas ce que tu souhaites je pense.


    Solution probable :

    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
     
     
    rep='G:\images\';
    new='Yes';
    while (strcmp(new,'Yes'))
    prompt={ 'Path du répertoire contenant les images indexées :'}; 
    name='1. Configuration pour la reconstitution 3D';
    numlines=1;
    defaultanswer={rep};
    options.Resize='on';
    options.WindowStyle='normal';
    options.Interpreter='tex';
    answer=inputdlg(prompt,name,numlines,defaultanswer,options);
     
    if (not(isempty(answer)==1))
    rep = answer{1,1};
    new=  questdlg('Do you want to add another path','Add another path','Yes','No','Yes');
    end
    end

  3. #3
    Membre éclairé
    Inscrit en
    Avril 2007
    Messages
    57
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Avril 2007
    Messages : 57
    Par défaut
    et heu.... il faut forcément passer par une ligne de commande? Parce que sinon, un petit UIGETDIR me semble approprié non?

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 65
    Par défaut
    Merci beaucoup.

    Le UIGETDIR était très approprié, mais si je l'applique,par la suite mes programmes bug...

    Sinon, il suffisait d'enlever le while, pour ne plus refaire la boucle indéfiniment. (cette commande ne servait à rien)


    J'ai un autre problème avec: "inputdlg", mon programme s'exécute si j'appui sur OK ou CANCEL...Je ne sais pas comment gérer ces boutons...

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 65
    Par défaut
    c'était tout bête:
    if (isempty(answer)==1)
    disp('annuler')
    else (isempty(answer)==0)
    if (not(isempty(answer)==1))
    rep = answer{1,1};
    end
    ... suite du programme
    end
    Merci pour tout à tous

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

Discussions similaires

  1. problême à l'ouverture d'un form
    Par Stéph utilisateur d'acces dans le forum Access
    Réponses: 10
    Dernier message: 19/09/2005, 12h12
  2. Problème d'ouverture de fenetre apres saisie d'un formulaire
    Par marsupilami34 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 10/08/2005, 08h52
  3. [JTree] Problème d'ouverture de chemin dans un JTree
    Par antares24 dans le forum Composants
    Réponses: 2
    Dernier message: 11/03/2005, 08h18
  4. Problême d'ouverture base de données
    Par comment_ca dans le forum Oracle
    Réponses: 20
    Dernier message: 14/12/2004, 12h39
  5. [Flash MX] Problème d'ouverture d'URL
    Par n_tony dans le forum Flash
    Réponses: 2
    Dernier message: 07/04/2004, 16h13

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