What's the callback function for "selecting" a TAB?
70 views (last 30 days)
Show older comments
Using App Designer with Tab-Group and Tabs. Now want to create and access to the call back function when the Tab is selected. With the right mouse button or help, it has "SizeChangedFcn".
How to make callback function for "selecting" thr Tab?
Also, it gives: [ 'SizeChangedFcn' callback will not execute while 'AutoResizeChildren' is set to 'on' ], even AutoResizeChildren are all set to 'OFF'.
What can stop these warnings?
Thank you for your help.
2 Comments
Geoff Hayes
on 5 Mar 2020
John - I think that you want to use the SelectionChangedFcn callback. (I'm not sure about the warnings...)
Accepted Answer
Harshendra Shah
on 9 Apr 2020
Hi John,
In order to set a call back to for Tab changes we require "TabGroupSelectionChanged" callback function from "TabGroup" instead of an individual "Tab".
This is how you can attach the callback in App Designer :
This callback will trigger when you have switched to a new tab, e.g., by clicking on the tab.
You may use the "app.TabGroup.SelectedTab" property to either get or set the currently selected tab. The following example shows how to do this.
>> selectedTab = app.TabGroup.SelectedTab;
>> app.TabGroup.SelectedTab = app.TabA;
This example shows how to detect that the user has switched to "TabA".
function TabGroupSelectionChanged(app, event)
if app.TabGroup.SelectedTab.Title == app.TabA.Title
%Code here runs when TabA is selected
end
end
Please refer to the "App Designer TabGroup Properties" documentation:https://www.mathworks.com/help/releases/R2019a/matlab/ref/matlab.ui.container.tabgroupappd-properties.html
Regarding your second query on warning "'SizeChangedFcn' callback will not execute while 'AutoResizeChildren' is set to 'on'", you can refere to the following MATLAB Answers:
It will give you a good understanding for why you are getting this warning.
I hope this helps.
1 Comment
Adam Ambarus
on 19 Jul 2022
Edited: Adam Ambarus
on 19 Jul 2022
That condition might throw errors, try:
if strcmp(app.TabGroup.SelectedTab.Title, app.TabA.Title)
end
More Answers (0)
See Also
Categories
Find more on Develop Apps Using App Designer 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!