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

 采纳的回答

更多回答(1 个)

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

1 个评论

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)

请先登录,再进行评论。

类别

帮助中心File Exchange 中查找有关 Desktop 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by