Borrar filtros
Borrar filtros

Multiple choices in a listbox

11 visualizaciones (últimos 30 días)
Nuno Fernandes
Nuno Fernandes el 31 de Mayo de 2011
I want to select multiple elements of a listbox and show them in another one. How can i do this in a simple way?
thanks

Respuesta aceptada

Matt Fig
Matt Fig el 31 de Mayo de 2011
If you set 'min' to 0 and 'max' to 10, you will be able to select multiple strings. Once you have that you can get the choices by:
C = get(U,{'string','value'})
C = C{1}(C{2})
Then set the 'string' property of the other listbox to C.
  2 comentarios
Nuno Fernandes
Nuno Fernandes el 31 de Mayo de 2011
I already knew that part of 'set '...min' to 0 and 'max' to 10...'. Now i can't save the selected elements to a matrix and then show them on other listbox...
Matt Fig
Matt Fig el 1 de Jun. de 2011
Interesting, it seems to work for me...
U = uicontrol('style','listbox',...
'units','pix',...
'string',{'Poodle';'stubb';'false';'together';'spanish'},...
'pos',[10 10 50 100],...
'min',0,'max',10,...
'callback',['C = get(gcbo,{''string'',''value''});',...
'set(U(2),''string'',C{1}(C{2}))'])
U(2) = uicontrol('style','listbox',...
'units','pix',...
'string','',...
'pos',[80 10 50 100],'min',0,'max',10)

Iniciar sesión para comentar.

Más respuestas (1)

Walter Roberson
Walter Roberson el 31 de Mayo de 2011
Set the 'Max' property of the listbox to be at least 2 greater than the 'Min' property. You will then be able to select multiple items in the usual ways (e.g., click-and-drag or control-click or as appropriate for your OS.) The listbox Value property will return an array of the indices of all the currently selected entries.
Note: the Callback will be called every time the selection changes, so if you are adding entries one by one using control or alt, then multiple callbacks will be generated.
  3 comentarios
Matt Fig
Matt Fig el 1 de Jun. de 2011
See the example I show above...
P
P el 5 de Sept. de 2012
Have you tried using the 'handles' structure to save the data in the callback of the first listbox and then displaying using a callback for the second listbox?

Iniciar sesión para comentar.

Categorías

Más información sobre Interactive Control and Callbacks 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