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 :
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...
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
le truc, c'est qu'au début, j'ai essayé de faire l'opération de "fermeture" avec le code suivant:et là, ça ne marchait pas et Matlab me renvoyait le message d'erreur suivant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 function done(f,eventdata) close f
POurquoi??? J'ai bien réussi à contourner le problème, mais j'aimerai bien arriver à capter pourquoi ce code là ne marche pas.??? Error using ==> close at 82
Specified window does not exist.
Error in ==> Main>done at 22
close f
??? Error while evaluating uicontrol Callback
Merci d'avance pour vos réponses.
Kévin
Partager