Bonjour,

Je code une interface à la main, 'interface.m'.

L'interface comprend un 'pushbutton'.
Lorsque je clique sur le 'pushbutton', un callback est lancé. Ce callback lance une autre interface, 'interface2' pour récupérer une valeur(comme une invite de commande).
Cette valeur est ensuite traitée dans le déroulement des instructions du callback.

Le problème est le suivant :
le callback continue le déroulement de ces instructions. Et donc ne récupère aucune donnée de 'interface2'

Voici le code de 'interface.m' :
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
37
38
39
 
function interface
 
    figure('position', [700 100 500 500], ...
                    'menubar', 'none', ...
                    'tag', 'interface');
 
 
    menuFic = uimenu('label', 'Fichier', ...
                        'tag', 'menuFic');
              uimenu(menuFic, 'label', 'Quitter', ...
                        'callback', 'close', ...
                        'accelerator', 'Q');
 
 
	uicontrol('style', 'pushbutton', ...
                'position', [150 20 120 30], ...
                'string', 'Valeurs', ...
                'callback', @maInvitVal, ...
                'tag', 'pb');
 
    data = guihandles (gcf);
 
    data.x = 0;
 
    guidata (gcf, data);
 
 
 
    %%% Callback Invit Selection Valeurs
function maInvitVal (~,~)
	data = guidata (gcf);
 
	[data.x] = interface2;
	data.x 
	disp('suite instructions');
	%% suite instructions
 
	guidata (gcbf, data);
Est ce que quelqu'un pourrait me dire comment faire pour que ce soit bloquant ? pour que la suite des instructions ne se fasse qu'une fois l'invite de commande traitée

Je vous remercie pour votre aide.