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 :

Réinitialisation de variables dans une interface graphique


Sujet :

Interfaces Graphiques

  1. #1
    Membre à l'essai
    Profil pro
    Étudiant
    Inscrit en
    Novembre 2008
    Messages
    18
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2008
    Messages : 18
    Points : 10
    Points
    10
    Par défaut Réinitialisation de variables dans une interface graphique
    Bonjour,

    Je crée actuellement une interface interface graphique pour le traitement d'image. Je voudrais savoir s'il est possible, après avoir effectué un premier calcul, de réinitialiser entièrement l'interface pour lancer un nouveau calcul. Une éspèce de boutton tout annuler en d'autres termes.

    J'utilise pour l'instant cette méthode (reech est le nom du programme):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    close(reech);
    open(reech);
    Mais il y a un gros message d'erreur qui s'affiche dans Matlab, bien que ma fenètre se ré-ouvre vide comme je le souhaite:

    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
     
    ??? Error using ==> open at 67
    NAME must contain a single string.
     
    Error in ==> reech>annuler_Callback at 355
    open(reech);
     
    Error in ==> gui_mainfcn at 96
            feval(varargin{:});
     
    Error in ==> reech at 47
        gui_mainfcn(gui_State, varargin{:});
     
    Error in ==>
    @(hObject,eventdata)reech('annuler_Callback',hObject,eventdata,guidata(hObject))
     
     
    ??? Error while evaluating uicontrol Callback
    Merci d'avance!

  2. #2
    Expert éminent sénior
    Avatar de Caro-Line
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    9 458
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 9 458
    Points : 14 828
    Points
    14 828
    Par défaut
    C'est même étonnant que le CLOSE fonctionne, reech étant là une variable dont on ne sait ce qu'elle vaut.
    Le plus simple à mon avis est de fermer la fenêtre (avec close(handle de la fenêtre)) et de relancer le programme tout simplement :
    Si reech.m est bien le nom du fichier contenant la fonction reech

  3. #3
    Membre à l'essai
    Profil pro
    Étudiant
    Inscrit en
    Novembre 2008
    Messages
    18
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2008
    Messages : 18
    Points : 10
    Points
    10
    Par défaut
    Citation Envoyé par Caro-Line Voir le message
    Le plus simple à mon avis est de fermer la fenêtre (avec close(handle de la fenêtre)) et de relancer le programme tout simplement :
    Si reech.m est bien le nom du fichier contenant la fonction reech
    Mais le Handle de la fenêtre est justement "reech"et mon fichier s'appelle bien reech.m. Je ne comprends pas... J'ai essayer ce que tu m'as dit mais il y a toujour le même message d'erreur!
    Voici le code du boutton annuler:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    function annuler_Callback(hObject, eventdata, handles)
     
    bouton1=questdlg('Etes-vous sur de vouloir tout annuler?','Tout annuler','Oui','Non','Oui');
     
    if (bouton=='Oui')
        close(reech);
        reech;
    end

  4. #4
    Expert éminent sénior
    Avatar de Caro-Line
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    9 458
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 9 458
    Points : 14 828
    Points
    14 828
    Par défaut
    Je ne pense pas que tu aies le même message d'erreur puisque tu n'utilises plus OPEN.
    Ceci dit c'est une très mauvaise idée de nommer une variable (le handle) du même nom que le nom d'une fonction puisqu'alors comment MATLAB sait-il si tu parles de la variable (reech le handle) ou de la fonction (reech.m) ?
    Par défaut MATLAB pensera qu'il s'agit de la variable.

    De plus dans ta sous-fonction a priori la variable reech (que tu as du définir ailleurs...) n'est pas connue.

    Si tu as utilisé GUIDE pour créer ton interface, le handle est normalement stocké dans handles.(tag de la figure), et la variable handles, elle, est connue dans ta sous-fonction puisque passée en paramètre.

  5. #5
    Membre à l'essai
    Profil pro
    Étudiant
    Inscrit en
    Novembre 2008
    Messages
    18
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2008
    Messages : 18
    Points : 10
    Points
    10
    Par défaut
    Ok merci ça venait d'un problème dans mon nom "buton1" qui n'était pas écrit juste dans la boucle if.

    Et en plus, y avait le "open" qu'il ne fallait pas mettre!

    Merci beaucoup!

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

Discussions similaires

  1. Ecrasement d'une variable créée dans une interface graphique
    Par Adjen dans le forum Interfaces Graphiques
    Réponses: 1
    Dernier message: 06/11/2014, 12h40
  2. afficher des variables dans une interface graphique
    Par massi15301 dans le forum Interfaces Graphiques
    Réponses: 3
    Dernier message: 15/03/2012, 12h02
  3. Intégrer des programmes dans une interface graphique avec GUIDE
    Par maserati222e dans le forum Interfaces Graphiques
    Réponses: 3
    Dernier message: 24/05/2007, 11h30
  4. zoom dans une interface graphique type gui
    Par oregos dans le forum MATLAB
    Réponses: 1
    Dernier message: 25/04/2007, 12h45
  5. appel d'un binaire systeme dans une interface graphique
    Par elbronziero dans le forum Tkinter
    Réponses: 4
    Dernier message: 18/04/2007, 10h01

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