Bonsoir a tous !
Je travaille sur une interface GUI dans laquelle on doit entrer une serie de valeurs (dans des edit), j'arrive sans problème à récupérer ces valeurs lorsque je lance le GUI seul, mon problème se pose quand je veux intégrer ces valeurs dans un autre .m. en effet j'ai essayé de faire :
1 executer le GUI
2 executer le .m
l'ennui c'est qu'il lance le GUI mais il n'attend pas que les valeurs soit récupérées avant de lancer le .m, du coup le .m s'arrète en disant qu'il n'a pas les valeurs (normal quoi !)
Je voudrais donc faire un système de bouton qui lance le programme une fois que l'on appuie sur ce bouton du gui et pas avant.
Je ne sais pas si c'est clair alors je met ma structure ici :
Mon gui :
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
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36 function Affichage figure('MenuBar','none','Name','Choix des parametres','NumberTitle','off','Position',[200,200,400,300]); uicontrol('Style','edit','String','','Position',[200,150,70,20],... 'CallBack',@val1); uicontrol('Style','text','String','Valeur de la premiere image','Position',[20,150,150,20]); uicontrol('Style','text','String','Valeur de la deuxieme image','Position',[20,120,150,20]); uicontrol('Style','edit','String','','Position',[200,120,70,20],... 'CallBack',@val2); uicontrol('Style','ToggleButton','String','OK','Position',[80,60,60,20],... 'CallBack',@valider); function val1(hObject, eventdata, handles) valeur1 = str2double(get(hObject,'string')); if isnan(valeur1) errordlg('Veuillez entrer une valeur numérique','Erreur','modal') return end assignin('base','valeur1',valeur1); end; function val2(hObject, eventdata, handles) valeur2 = str2double(get(hObject,'string')); if isnan(valeur2) errordlg('Veuillez entrer une valeur numérique','Erreur','modal') return end assignin('base','valeur2',valeur2); end; function valider(h, eventdata) close all end;
et la structure de mon programme .m faisant appel au gui:
Si je résume il execute tout d'un coup, comment faire pour qu'il attende la fermeture du GUI pour entrer dans la boucle ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 Affichage for n=valeur1:valeur2 %instructions diverses end
Toute idée est la bienvenue !
Partager