Bonjour,

Je code une interface à la main, 'interface.m', qui renvoie un nombre.

L'interface comprend un champ 'edit' et un 'pushbutton'.
Avec le 'edit', je rentre un nombre que je valide avec 'pushbutton'.

Je voudrais que le nombre du champ 'edit soit transmis, par l'intermediaire du 'pushbutton', au nombre que renvoie 'interface.m'.

Le problème, c'est que ca marche pas (Et ca semble logique)

Voila le 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
20
21
22
23
24
25
26
27
28
 
function [x0] = M_CourbeInvit
    figure ('position', [300 300 237 65], ...
                     'numbertitle', 'off', ...
                     'name', 'Selection Valeurs', ...
                     'menubar', 'none', ...
                     'toolbar', 'none', ...
                     'tag', 'interface');
 
 
    uicontrol ('style', 'edit', 'position', [39 35 35 30], 'tag', 'x0');
 
 
    uicontrol ('style', 'pushbutton', 'position', [187 2 50 63], ...
                'string', 'Valider', 'callback', @valider);
 
 
 
 
    data = guihandles (gcf);
    guidata(gcf, data);
 
 
function valider(~,~)
    data = guidata(gcbf);
    x0 = str2num(get(data.x0, 'string'));
    guidata(gcf, data);
    close;
Le lien n'est pas fait entre x0 (celui renvoyé par l'interface) et x0 (celui de la fonction). _Et ça parait logique_.

Comment je peux faire de façon propre ?

Je vous remercie pour votre aide