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 :

problème de handle avec un push button [Débutant]


Sujet :

Interfaces Graphiques

  1. #1
    Membre confirmé
    Inscrit en
    Juillet 2009
    Messages
    89
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 89
    Par défaut problème de handle avec un push button
    Bonjour à tous,

    Tout d'abord, je tiens à préciser que si le préfixe "ultra-débutant" existait, je l'aurai mis.

    Ensuite, voilà mon problème:

    je veux créer un bouton poussoir sur lequel est inscrit un message. Quand je clique sur ce bouton, je veux que la figure disparaisse et que mon programme continue.
    Voilà mon code :
    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
    f=figure('Visible','off','Position',[450,300,350,200]);
    hok=uicontrol('Style','pushbutton',...
                      'String','Ok',...
                      'Position',[50 90 100 50],...
                      'Callback',{@done});
    htitre=uicontrol('Style','text',...
                     'String','Please select the file with the hyperspectral image',...
                     'Position',[10 160 330 10]);
    movegui(f,'center')
    set(f,'Visible','on');
     
    % waitfor(f)
    function done(f,eventdata)
    close
     
     
    [filename, pathname] = uigetfile('*.*', 'Pick a file');
    nomfich=strcat(pathname,filename);
    I=multibandread(nomfich,[145,145,200],'uint16',0,'bsq','ieee-le'); % le 2° argument correspond aux dimensions du cube hyperspectral
    les positions et tailles du message et du bouton sont pourries, mais c'est pas très important. A l'heure actuelle, ce code marche...

    le truc, c'est qu'au début, j'ai essayé de faire l'opération de "fermeture" avec le code suivant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    function done(f,eventdata)
    close f
    et là, ça ne marchait pas et Matlab me renvoyait le message d'erreur suivant :
    ??? Error using ==> close at 82
    Specified window does not exist.

    Error in ==> Main>done at 22
    close f

    ??? Error while evaluating uicontrol Callback
    POurquoi??? J'ai bien réussi à contourner le problème, mais j'aimerai bien arriver à capter pourquoi ce code là ne marche pas.

    Merci d'avance pour vos réponses.
    Kévin

  2. #2
    Expert confirmé
    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
    Par défaut
    Les fonctions peuvent être utilisées de 2 façons sous MATLAB : avec ou sans parenthèses, et ça ne donne pas du tout la même chose :


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

Discussions similaires

  1. Problème avec get (entry button)
    Par Raskaya dans le forum Tkinter
    Réponses: 7
    Dernier message: 03/10/2013, 16h21
  2. [Débutant] Ouvrir nouvelle fenêtre avec un push button
    Par roudoudounette dans le forum Interfaces Graphiques
    Réponses: 1
    Dernier message: 16/12/2009, 12h47
  3. Réponses: 0
    Dernier message: 28/07/2009, 09h29
  4. Problème avec GTK radio button
    Par biscoto dans le forum GTK+ avec C & C++
    Réponses: 0
    Dernier message: 03/06/2008, 19h31
  5. Réponses: 10
    Dernier message: 22/05/2007, 14h58

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