Bonjour
Je lance mon interface formée sous GUIDE. Du coup une fonction d'initialisation s'execute, dans la laquelle je voudrais récupérer une variable utilisateur. J'ai pensé à inputdlg, mais je préfère avoir une liste.
Du coup j'ai créé une figure qui met pause le reste de l'execution, tant que l'utilisateur n'a pas validé son choix.
Le problème: quand je clique sur OK, je rentre dans le if mais EN PLUS le close ne se déroule pas (mon interface initalement lancée (pas "panel") s'affiche...). Double probleme en gros.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 % Initialisation variable study = 0; screenpos = get(0, 'screensize'); panel = figure('Units', 'Pixels', 'Position', [(screenpos(3)-300)/2 (screenpos(4)-50)/2 300 122], 'Name', 'Variable', 'MenuBar', 'none', 'Color', [0.925 0.914 0.847], 'NumberTitle', 'off',n 'CloseRequestFcn', 'delete(gcf);', 'Resize', 'off'); uicontrol(panel, 'style', 'listbox', 'Tag', 'listEtude', 'Backgroundcolor', 'w', 'String', '1|2', 'Position', [10 32 280 60]); uicontrol(panel, 'style', 'pushbutton', 'String', 'OK', 'Position', [210 5 80 22], 'Callback', 'study = get(findobj(''Tag'', ''listEtude''), ''Value'');uiresume(gcf)'); uiwait(gcf) if study == 0 close; return; end
J'ai tenté au lieu du uiresume un close(gcf) mais ça plante, comportement plutot étrange...
Comment faire?
Merci
Partager