Bonjour,
Quand j'écris ceci :
Comment puis-je savoir si ma case est cochée (d'un point de vue programmation)?
Code : Sélectionner tout - Visualiser dans une fenêtre à part uicontrol('style','checkbox','string','charly')
Merci
Christophe
Bonjour,
Quand j'écris ceci :
Comment puis-je savoir si ma case est cochée (d'un point de vue programmation)?
Code : Sélectionner tout - Visualiser dans une fenêtre à part uicontrol('style','checkbox','string','charly')
Merci
Christophe
INCIA : MATLAB R2014a sous MAC OS 10.9.3
Nous piétinerons éternellement aux frontières de l'Inconnu, cherchant à comprendre ce qui restera toujours incompréhensible. Et c'est précisément cela qui fait des nous des hommes. Isaac Asimov
En récupérant et en testant la propriété Value de l'objet
Ingénieur indépendant en mécatronique - Conseil, conception et formation
- Conception mécanique (Autodesk Fusion 360)
- Impression 3D (Ultimaker)
- Développement informatique (Python, MATLAB, C)
- Programmation de microcontrôleur (Microchip PIC, ESP32, Raspberry Pi, Arduino…)
« J'étais le meilleur ami que le vieux Jim avait au monde. Il fallait choisir. J'ai réfléchi un moment, puis je me suis dit : "Tant pis ! J'irai en enfer" » (Saint Huck)
En effet Dut, mais c'est la syntaxe qui me manque...
Je sais que la réponse est là ( http://www.developpez.net/forums/sho...ckbox+callback ) mais il y a un truc que je ne comprends pas ou plutôt qui m'échappe...
INCIA : MATLAB R2014a sous MAC OS 10.9.3
Nous piétinerons éternellement aux frontières de l'Inconnu, cherchant à comprendre ce qui restera toujours incompréhensible. Et c'est précisément cela qui fait des nous des hommes. Isaac Asimov
j'ai réussit en faisant ceci :mais "a" me renvoie toujours "0" puisque je n'est pas eu le temps de cocher...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 fig=figure; uicontrol('style','checkbox','string','charly','tag','edit1'); handles=guihandles(fig); a=get(handles.edit1,'value');
Auriez vous une solution ?
INCIA : MATLAB R2014a sous MAC OS 10.9.3
Nous piétinerons éternellement aux frontières de l'Inconnu, cherchant à comprendre ce qui restera toujours incompréhensible. Et c'est précisément cela qui fait des nous des hommes. Isaac Asimov
Si tu nous disais plutôt à quoi te sert cet objet et ce que tu cherches à faire ?
Ingénieur indépendant en mécatronique - Conseil, conception et formation
- Conception mécanique (Autodesk Fusion 360)
- Impression 3D (Ultimaker)
- Développement informatique (Python, MATLAB, C)
- Programmation de microcontrôleur (Microchip PIC, ESP32, Raspberry Pi, Arduino…)
« J'étais le meilleur ami que le vieux Jim avait au monde. Il fallait choisir. J'ai réfléchi un moment, puis je me suis dit : "Tant pis ! J'irai en enfer" » (Saint Huck)
Salut, j'ai trouvé une manière détourné qui est la suivante :
Sinon, ce que je voulais faire, c'est que l'utilisateur devait sélectionner un des deux ou même les deux sujets ("Charly", "Magnum") pour après afficher un traitement de données sur chacun ou les deux de ses sujets.
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
40
41
42 fig1=figure('menubar','none',... % Interface graphique principale 'NumberTitle','off',..., 'name','SUIVI DES SUJETS'); u1 = uimenu('label','Charly'); % Création du menu "Charly, Magnum et les deux" uimenu(u1,... 'label','Evolution de son poids',... % nom de l'étiquette 'accelerator','1',... % raccourci clavier "ctrl+1" 'Callback','charly_poids'); % lance la fonction "charly_poids" uimenu(u1,... 'label','travail',... 'accelerator','2',... 'callback','charly_work'); uimenu(u1,... 'label','performance',... 'accelerator','3',... 'callback','charly_perf'); u2 = uimenu('label','Magnum'); uimenu(u2,... 'label','Evolution de son poids',... 'accelerator','4',... 'callback','magnum_poids'); uimenu(u2,... 'label','travail',... 'accelerator','5',... 'callback','magnum_work'); uimenu(u2,... 'label','performance',... 'accelerator','6',... 'callback','magnum_perf'); u3 = uimenu('label','les deux'); uimenu(u3,... 'label','Evolution de leur poids',... 'accelerator','7',... 'callback','deux_poids'); uimenu(u3,... 'label','performances',... 'accelerator','8',... 'callback','deux_perf'); uicontrol(fig1,'style','text','string','Oo...Faites votre choix dans le menu...oO','position',[175 225 225 12]);
Puisque c'était une question à choix multiples, je pensais que c'était le meilleure chose à faire...
INCIA : MATLAB R2014a sous MAC OS 10.9.3
Nous piétinerons éternellement aux frontières de l'Inconnu, cherchant à comprendre ce qui restera toujours incompréhensible. Et c'est précisément cela qui fait des nous des hommes. Isaac Asimov
Pourquoi ne pas essayer de partir sur cette base ?
Le même code avec des fonctions imbriquées (nested functions) :
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 function test fig = figure; uicontrol('style','checkbox','position',[20 100 100 50],'tag','cb1','string','Charly') uicontrol('style','checkbox','position',[20 150 100 50],'tag','cb2','string','Magnum') uicontrol('style','pushbutton','string','Choix','position',[20 20 100 50],... 'callback',@choix) uicontrol('style','text','position',[150 20 200 200],'tag','txt') handles = guihandles(fig); guidata(fig,handles); function choix(obj,event) h = guidata(gcbf); flag_Charly = get(h.cb1,'value'); flag_Magnum = get(h.cb2,'value'); if flag_Charly & flag_Magnum str = 'Charly et Magnum sélectionnés'; elseif flag_Charly str = 'Charly sélectionné'; elseif flag_Magnum str = 'Magnum sélectionné'; else str = 'Aucun sélectionné'; end set(h.txt,'string',str)
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 function test2 figure; cb(1) = uicontrol('style','checkbox','position',[20 100 100 50],'tag','cb1','string','Charly'); cb(2) = uicontrol('style','checkbox','position',[20 150 100 50],'tag','cb2','string','Magnum'); uicontrol('style','pushbutton','string','Choix','position',[20 20 100 50],... 'callback',@choix) txt = uicontrol('style','text','position',[150 20 200 200],'tag','txt'); function choix(obj,event) flag_Charly = get(cb(1),'value'); flag_Magnum = get(cb(2),'value'); if flag_Charly & flag_Magnum str = 'Charly et Magnum sélectionnés'; elseif flag_Charly str = 'Charly sélectionné'; elseif flag_Magnum str = 'Magnum sélectionné'; else str = 'Aucun sélectionné'; end set(txt,'string',str) end end
Ingénieur indépendant en mécatronique - Conseil, conception et formation
- Conception mécanique (Autodesk Fusion 360)
- Impression 3D (Ultimaker)
- Développement informatique (Python, MATLAB, C)
- Programmation de microcontrôleur (Microchip PIC, ESP32, Raspberry Pi, Arduino…)
« J'étais le meilleur ami que le vieux Jim avait au monde. Il fallait choisir. J'ai réfléchi un moment, puis je me suis dit : "Tant pis ! J'irai en enfer" » (Saint Huck)
petit malin Dut...
INCIA : MATLAB R2014a sous MAC OS 10.9.3
Nous piétinerons éternellement aux frontières de l'Inconnu, cherchant à comprendre ce qui restera toujours incompréhensible. Et c'est précisément cela qui fait des nous des hommes. Isaac Asimov
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager