Get index of selected button in button toggle group

5 vues (au cours des 30 derniers jours)
Jim Hokanson
Jim Hokanson le 10 Nov 2017
When using a ButtonGroup in AppDesigner it is not clear how to get the index of the selected button. The only available approach appears to be:
string_values = {h.Buttons.Text};
I = find(strcmp(h.SelectedObject.Text,string_values));
Is there anything more direct?

Réponses (2)

Matt J
Matt J le 10 Nov 2017
Modifié(e) : Matt J le 10 Nov 2017
I don't think so, but I don't immediately see why you would want to assign numeric indices to the different buttons. Processing the selection would normally be done index-free using a switch...case
switch h.SelectedObject.Text
case 'Button #1'
case 'Button #2'
end
If you want to associate selections with numeric values, a slider or spinner would be a more appropriate component.

Joshua Brownlow
Joshua Brownlow le 1 Avr 2019
I still don't think this is the best way, but you can cycle through the buttons in the group with a for loop to check which index has a value of 1 for being pressed down
for i = 1:buttonGroupSize
app.ButtonGroup.Buttons(i).Value
end

Catégories

En savoir plus sur Function Creation dans Help Center et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by