GUI: Change keyboard focus to listbox

Hi
I've got a workflow related GUI question.
Situation: A GUI with 3 buttons and a listbox. Buttons populate listbox with various content.
What i want to do: When i press the buttons, I want focus to shift to the listbox automatically. This so that the user may easily navigate the listbox using the arrow-keys and use ctrl+a if needed, without having to press tab first.
I tried changing the main GUI property 'CurrentObject' to the listbox handle, but this had no effect. Also, changing the listbox handle property 'Selected' to 'on' had no effect.
Does anyone have a solution?
Tobias

 Accepted Answer

More Answers (1)

John Perko
John Perko on 6 Jun 2013
No such thing in Matlab 2010b as "ListboxHandle".

1 Comment

A listbox handle is a unique pointer to a specific listbox. When you create a listbox (or any other object, for that matter) the output is a pointer to that specific object:
handleToListbox = uicontrol('Style', 'listbox','string','test');
handleToPlot = plot(1:10,rand(10,1));
handleToFigure = figure;
And so on.
To set keyboard focus to the listbox created above, use:
uicontrol(handleToListbox)

Sign in to comment.

Categories

Find more on App Building in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!