Bonjour,
Je me pose une question depuis quelque temps sur Matlab. J'ai tenté de trouver sur internet une réponse, mais je sais à peine quels mots utiliser pour une recherche sur Google.
Voilà ma question : d'habitude quand j'utilise par exemple un bouton ou un menu, que je fais un CallBack, je me crée dans le programme quelque chose qui ressemble à ça :
Ca fonctionne sans problème, et cela me permet d'extraire des valeurs. Mais quand on a plein de boutons, plein de menus, ça devient vite lourd. Ce que j'aimerais faire, c'est de placer ces petites fonctions dans des fichiers séparés, afin de rendre l'ensemble plus lisible.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 [...] a = 0; unboutoninutile = uicontrol('Parent',hpanelbutton, ... 'Style','pushbutton', ... 'String','Donnez à ''a'' la valeur 1 !',... 'Callback',{@monbouton}); function monbouton(src,evnt) a = 1; end
J'ai fait ceci, me recréer un fichier à coté, et y mettre ma fonction monbouton. Mais malheureusement, sur ce fichier, je n'ai plus aucun moyen de faire sortir facilement la valeur de a. J'ai tenté par exemple d'écrire :
et sur un fichier "monbouton.m" d'écrire :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2global a; a=0;
Mais ça ne marche pas (et on dit partout que les variables globales c'est le mal !). Comment faire alors pour arriver au résultat précédent le plus simplement possible, sans avoir à créer la moindre fonction fille dans ma fonction principale, mais toujours en plaçant toutes mes fonctions dans des fichiers séparés ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 function monbouton(src,evnt) a = 1; end
(J'espère avoir été compréhensible)
Merci !
Gouhouf
Partager