Get multiples item from listbox

15 visualizaciones (últimos 30 días)
Nicolas Giret
Nicolas Giret el 2 de Feb. de 2017
Comentada: Nicolas Giret el 2 de Feb. de 2017
Dear all,
I have a listbox in a GUI from which I want to retrieve the value of different items. I have set up the "Max" value to 2 (and the "Min" to 0). With this I can select 2 items in my list. But, when I want to get the value of the two selected items with:
contents = cellstr(get(hObject,'String'))
selected_file=contents{get(hObject,'Value')}
It is only giving me the value of the first item in the list as a string.
How I can get an array of the two selected items then? I'm sure it is very simple but I can't find the solution.
Thanks for your help.

Respuestas (3)

Adam
Adam el 2 de Feb. de 2017
Editada: Adam el 2 de Feb. de 2017
selected_file=contents( get(hObject,'Value') )
should work. Or just
selected_file = hObject.String( hObject.Value );
in one line (R2014b or later - the equivalent get style works for earlier versions)

Nicolas Giret
Nicolas Giret el 2 de Feb. de 2017
Thanks Adam,
It is indeed giving the "Value" ([1 2] if I select the two first items).
But actually, I wasn't clear enough. Instead of the "Value", I rather wanted to get the "String" of these 2 items which I get with:
contents = (get(hObject,'Value'))
str_contents = cellstr(get(hObject,'String'))
selected_items=str_contents(contents)
Perhaps it is not really elegant, but it's working !
  1 comentario
Adam
Adam el 2 de Feb. de 2017
Well in your original question you extracted the string into contents so I used what you had written there and didn't bother to repeat it.

Iniciar sesión para comentar.


Jan
Jan el 2 de Feb. de 2017
Editada: Jan el 2 de Feb. de 2017
Older Matlab versions contained the function popupstr for this job. Unfortunately this small but useful piece of code has been removed. Here is a replacement, which handles single and multi-selction listboxes and popup menus, strings, CHAR matrices and cell strings:
selected_items = GetSelection(hObject)

Categorías

Más información sobre Loops and Conditional Statements en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by