Prevent user from selecting same option

5 visualizzazioni (ultimi 30 giorni)
Anabel Garcia Hernandez
Anabel Garcia Hernandez il 2 Feb 2020
Risposto: Image Analyst il 3 Feb 2020
  • I am tasked with creatin a menu with 5 options and then a menu with the options left so that the user cannot choose same option twice. I know how to create the first menu but i do not know how to create the second one.

Risposte (1)

Image Analyst
Image Analyst il 3 Feb 2020
Use listdlg():
choices = {'Choice 1', 'Choice 2', 'Choice 3', 'Choice 4', 'Choice 5'}
[selectedIndex1, tf] = listdlg('ListString', choices); % Range is 1 to 5
% Remove the users choice from the list so it cannot be chosen next time.
choices(selectedIndex1) = []; % Set to null to remove it.
% Get choice from remaining items:
[selectedIndex2, tf] = listdlg('ListString', choices); % Range is 1 to 4 now
Note however that the indexes change. So for example if choice 3 was chosen and removed, choice 5, which was index 5 the first one, will be index 4 the seond time because one above it was removed.

Categorie

Scopri di più su Scope Variables and Generate Names in Help Center e File Exchange

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by