I found a solution, it seems well working. It could be a process to create multitab GUI's with GUIDE.
- - Put all the components of the tab wrapped in a panel within GUIDE
- - Place the components as you want and change all the units to "normalized"
- - Create a new figure with a tabpanel container (the same size of your panel is better. If you put all to normalized, all components will keep the defined ratio)
- - open in invisible mode the GUI figure corresponding to the current tab,
- - copy the main panel object and set the tab panel as the new parent (copyobj)
Now we need to retrieve all components handles to acces their properties. this can be done with a simple function:
function handles=childHandles(hParent)
%Find all the children handles
handVal=findobj(hParent);
%Find all the children name defined within GUIDE
handTag=get(handVal,'Tag');
%Create a new handle structure
for i=1:length(handVal)
handles.(char(handTag(i))=handVal(i);
end
end
this will output a new handles structure of all cloned components.
I don't know if there is most simple solution, but it is a good way for me to save time when building complex GUI. (GUI Layout is very usefull, but the number of command lines become veeeery long when you have a lot of components). If somebody is interresed by a complete example, I could provide one on file exchange when I will have some free time.