How can i select (check off) multiple checkboxes?

4 visualizzazioni (ultimi 30 giorni)
I am working on a GUI that has a lot of checkboxes. I'd like to the user to be able to press a button that selects all of them at once.
The tags of the checkboxes are chk1, chk2, chk3...
I tried something similar to the following code, but it's giving me an error...
for i = 1:5
set(sprintf('handles.chk%d',i),'value', 1)
end

Risposta accettata

Azzi Abdelmalek
Azzi Abdelmalek il 26 Ott 2012
Modificato: Azzi Abdelmalek il 26 Ott 2012
for ii = 1:5
set(handles.(sprintf('chk%d',ii)),'value', 1)
end
  3 Commenti
Rafael Campos
Rafael Campos il 27 Ott 2018
Hi Azzi!
I am working on a GUI on app Designer that has 200 checkboxes. They have tags like "app.CheckBox_X_Y", where X can have values from 1 to 50 and Y can have values from 1 to 4.
I'd like to change the state of the last checkbox and this must change the state of all others at once.
I tried the following code, but it's giving me error "Error using set - Invalid handle". Can someone help me?
function CheckBoxPelota_X_1ValueChanged(app, event)
if app.CheckBoxPelota_X_1.Value == 0
for cont1 = 1:1:50
for cont2 = 1:1:4
set(sprintf('app.CheckBoxPelota_%d_',cont1),'Value', 1);
end
end
else
for cont1 = 1:1:50
for cont2 = 1:1:4
set(sprintf('app.CheckBoxPelota_%d_',cont1),'Value', 0);
end
end
end
end
0 Comments

Accedi per commentare.

Più risposte (1)

Evan
Evan il 26 Ott 2012
Modificato: Evan il 26 Ott 2012
If you want to avoid using a for loop, the following functions might be useful:
help findobj
help regexp
Assuming that all your wanted checkboxes have tags of the form chkn where n = 1,2,3... and assuming there are no other checkboxes with tags of the form chkn that you want to exclude, I believe the following will set the values of all your checkboxes to 1 at once:
set(findobj('Style','checkbox','-regexp','Tag','chk[0-9]'),'Value',1)

Categorie

Scopri di più su Migrate GUIDE Apps in Help Center e File Exchange

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by