Is there a way to hide a specific uitab ?

Hello,
I am working with uitabgroup and uitabs?
I would like to be able to hide or delete a uitab.
Does any one have a solution to this problem.
Thank you very much

 Risposta accettata

Adam
Adam il 30 Ott 2015
Modificato: Adam il 30 Ott 2015
You can reparent the tab to empty as e.g.
f = figure;
tabgp = uitabgroup(f,'Position',[.05 .05 .3 .8]);
tab1 = uitab(tabgp,'Title','Type of Signal');
tab2 = uitab(tabgp,'Title','Plot Options');
tab1.Parent = [];
then
tab1.Parent = tabgp;
to bring it back again.
The problem is that the tab returns in a different order to previously since what was the 2nd tab originally became the first (and only in this example) tab when you reparent the first one, so when you bring the first one back it adds it to the end.
You can fix this though by permuting the
tabgp.Children
back to the same order you originally had.
I just tried inserting the tab directly into the 'Children' array but it does not allow you to do that so this is the only solution I can think of off the top of my head.

5 Commenti

Thanks Adam, that solved it.
Somehow, when I set the parent of some tabs to [], when I close the figure, a new and empty figure initializes. Can somebody explain this behavior? (r2017b and r2018b)
it also can reach in this way:
f = figure;
tabgp = uitabgroup(f,'Position',[.05 .05 .3 .8]);
tab1 = uitab(tabgp,'Title','Type of Signal');
tab2 = uitab(tabgp,'Title','Plot Options');
tabgp.Chileren(1).delete;
this way may be more simple and understood。
Adam
Adam il 22 Mar 2019
Modificato: Adam il 22 Mar 2019
Sure, if you want to delete a tab then delete it directly:
delete( tab1 );
but hiding it implies you will want to see it again at some point, which you can't do if you have deleted it.

Accedi per commentare.

Più risposte (3)

Scott Urquhart
Scott Urquhart il 30 Ott 2015
Modificato: Walter Roberson il 13 Ago 2020
This doesn't work (for me).
handles.tabgp = uitabgroup('Position',[0.006 0.470 0.99 0.44],'Visible','on'); handles.tab1 = uitab(handles.tabgp,'Title','TAB1');
set(handles.tab1,'Visible','off')
Error using matlab.ui.container.Tab/set There is no Visible property on the Tab class.

Categorie

Scopri di più su Mathematics in Centro assistenza e File Exchange

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by