Help on Disappearing Popupmenu
5 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
So I've created a GUI with a popupmenu, but it seems that whenever I try to populate the menu, it disappears, anyone know what going on. Thanks in advance. Heres an example of what I am trying to do.
var1 = {'Ex1','Ex2','Ex3'}
for i =1:length(var1)
set(handles.popupmenu1,'String',var1(i),'Value',i)
end
0 Commenti
Risposta accettata
Image Analyst
il 14 Lug 2014
That code you gave will give you a single item (the last one) in the popup. Do not use a for loop. The items in a popup or listbox are not entered in one at a time like you tried, they are done all at once with a single call to set the string property. What you did was to set the entire list to just a single item, and you did it 3 times (once on each iteration of your for loop). Since there is only one item in there, and the value is now 3 (which is more than 1), the popup will not display.
To fix, send in all the items in one shot, then set the value.
var1 = {'Ex1', 'Ex2', 'Ex3'}
set(handles.popupmenu1, 'String', var1); % Send in all 3 items at once.
set(handles.popupmenu1, 'Value', length(var1)); % Set what item is selected (the last one).
Più risposte (1)
Azzi Abdelmalek
il 14 Lug 2014
Modificato: Azzi Abdelmalek
il 14 Lug 2014
Why the for loop?
var1 = {'Ex1','Ex2','Ex3'}
i=1
set(handles.popupmenu1,'String',var1,'Value',i)
4 Commenti
Image Analyst
il 14 Lug 2014
Azzi's code is correct. If it doesn't work, then do it in two separate steps, set the string first, and then the value. Do not use a for loop. The items are not entered in one at a time like you tried, they are done all at once with a single call to set the string property.
Vedere anche
Categorie
Scopri di più su Migrate GUIDE Apps in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!