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

3
我目前正在尝试在我的MATLAB源代码中编写一行程序,以更改使用uicontrol、uitabgroup、uitab等创建的GUI的选项卡。
我想要的是一行代码,可以像这个文档中所示那样更改GUI的当前选定选项卡:https://www.mathworks.com/matlabcentral/answers/166175-how-to-programmatically-select-a-tab-in-a-uitabgroup 然而,尽管没有显示错误,它并没有更改选项卡。由于该帖子发布于将近2015年,我目前正在使用MATLAB 2011b,并对此感到担忧。
是否有人能够指导我适当的方向或了解任何关于旧版本MATLAB的此问题的资源?

看一下这个答案。它提供了一个示例,说明如何在使用GUI Layout Toolbox构建的UI中更改所选选项卡,这比uitabgroup要好得多。 - nirvana-msu
2个回答

1

uitabuitabgroup直到R2014b才被正式记录为函数,因此它们在2004年引入、2011年的版本以及2014年的“官方”文档之间可能发生了变化,这并不奇怪。

根据Yair's blog的说法,uitabuitabgroup在多年来发生了许多变化,特别是在如何编程选择选项卡方面。看起来,在您的版本中,设置SelectedIndex(一个隐藏属性)应该可以编程选择选项卡。

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

set(htabgroup, 'SelectedIndex', 2)

0

在现代版本的Matlab中

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

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

点击这里查看实时示例。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接