如何以编程方式更改MATLAB GUI中的选项卡

时间:2016-07-06 22:30:16

标签: matlab user-interface tabs matlab-figure

我正在尝试在我的MATLAB源代码中编写一行代码,它将更改我使用uicontrol,uitabgroup,uitab等创建的GUI选项卡。

我想要的是一行代码,它将更改GUI的当前选定选项卡,如本文档所示:https://www.mathworks.com/matlabcentral/answers/166175-how-to-programmatically-select-a-tab-in-a-uitabgroup

但是,尽管没有显示错误,但它不会更改选项卡。我现在正在使用MATLAB 2011b并且发现这个问题,因为这篇文章是在差不多2015年完成的。

对于旧版本的MATLAB,有没有人可以指导我或者知道有关此问题的任何资源?

2 个答案:

答案 0 :(得分:1)

uitabuitabgroup并非正式而且#34;记录在R2014b之前的功能,所以它们在2004年的介绍,2011年的版本和官方的#34;之间可能已经发生了变化,这一点也就不足为奇了。 2014年的文件。

Yair's blog的同意,多年来uitabuitabgroup进行了一些更改,特别是在如何以编程方式选择标签方面。看来,对于您的版本,设置SelectedIndex(隐藏属性)应该以编程方式选择选项卡。

htabgroup = uitabgroup();
htab1 = uitab(htabgroup, 'Title', 'Tab1');
htab2 = uitab(htabgroup, 'Title', 'Tab2');

set(htabgroup, 'SelectedIndex', 2)

答案 1 :(得分:0)

在Matlab的现代版本中

SelectedTab对象的属性TabGroup设置为所需选项卡的句柄。

function GoToSomeTabButtonPushed(app, event)

    app.TabGroup.SelectedTab = app.SomeTab;

    % Alternatively, assuming the desired tab is the second:
    app.TabGroup.SelectedTab = app.TabGroup.Children(2);

end

查看实时示例here