Bonjour,
j'ai fais un petit tour sur les messages concernant les "uibuttonsgroup" mais n'est pas trouver mon bonheur.
Dans mon code j'ai créé un groupe de boutons comprenant 2 radio boutons. J'aimerais savoir lequel des 2 à été sélectionné, pour cela, je pensais avoir trouvé une solution en mettant en callback une fonction.
Voici mon code pour le groupe :
Et celui de la fonction :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 bgroup = uibuttongroup('visible','off','BackgroundColor','w',... 'Units','Normalized','Position',[0.4 0.4 0.2 0.2],... 'Title','Choix du style'); radio1 = uicontrol('Style','Radio','String','param1',... 'Units','Normalized','Position',[0 0 1 0.5],'parent',... bgroup,'HandleVisibility','off','BackgroundColor','w'); radio2 = uicontrol('Style','Radio','String','param2',... 'Units','Normalized','Position',[0.5 0 1 0.5],'parent',... bgroup,'HandleVisibility','off','BackgroundColor','w'); set(bgroup,'SelectedObject',[]); set(bgroup,'SelectionChangeFcn',@selcbk); set(bgroup,'Visible','on');
De cette manière, si le paramètre 1 est sélectionner TF1=1 et TF2=0, Inversement pour le paramètre 2. Cela fonctionne dans la fonction, mais les valeurs de TF1 et TF2 ne sont pas récupérer.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 function [TF1, TF2]=selcbk(source, eventdata) h=get(eventdata.NewValue,'String'); TF1=strcmp(h,'param1'); TF2=strcmp(h,'param2');
Comment faire cela? Y a t-il un moyen plus simple ?
Merci d'avance pour vos réponses.
Partager