GUI: Change keyboard focus to listbox

4 views (last 30 days)
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

Jan
Jan on 24 Jan 2012
Perhaps this helps:
uicontrol(ListboxHandle)

More Answers (1)

John Perko
John Perko on 6 Jun 2013
No such thing in Matlab 2010b as "ListboxHandle".
  1 Comment
Tobias Litherland
Tobias Litherland on 6 Jun 2013
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 Migrate GUIDE Apps 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!