访问复制的 uipanel 的子项(Matlab)
Access children of copied uipanel (Matlab)
我在 Matlab 中创建了一个 uipanel 并在其上放置了一些 uicontrols。复制面板时如何访问这些 uicontrols?
示例:
panel_a=uipanel(figure);
editfield=uicontrol(panel_a, 'style','edit');
x=uitab(tabgroup);
panel_b=copyobj(panel_a,x);
tmp=panel_b.editfield.String; <-- how do I write this?
如何访问 panel_b
的 editfield
?
如果您为 uicontrol
分配一个 Tag
值作为开始,您可以使用它来找到它的句柄,一旦您使用 findobj
将它复制到新面板。
% Assign a 'Tag' value specific to this uicontrol
editfield = uicontrol(panel_a, 'style', 'edit', 'tag', 'editfield');
% Copy your relevant objects
panel_b = copyobj(panel_a, x);
% Use findobj to locate the handle to the object of interest
tmp = findobj(panel_b, 'Tag', 'editfield')
或者,您可以使用 findobj
查找所有编辑框
tmp = findobj(panel_b, 'Style', 'edit');
我在 Matlab 中创建了一个 uipanel 并在其上放置了一些 uicontrols。复制面板时如何访问这些 uicontrols?
示例:
panel_a=uipanel(figure);
editfield=uicontrol(panel_a, 'style','edit');
x=uitab(tabgroup);
panel_b=copyobj(panel_a,x);
tmp=panel_b.editfield.String; <-- how do I write this?
如何访问 panel_b
的 editfield
?
如果您为 uicontrol
分配一个 Tag
值作为开始,您可以使用它来找到它的句柄,一旦您使用 findobj
将它复制到新面板。
% Assign a 'Tag' value specific to this uicontrol
editfield = uicontrol(panel_a, 'style', 'edit', 'tag', 'editfield');
% Copy your relevant objects
panel_b = copyobj(panel_a, x);
% Use findobj to locate the handle to the object of interest
tmp = findobj(panel_b, 'Tag', 'editfield')
或者,您可以使用 findobj
查找所有编辑框
tmp = findobj(panel_b, 'Style', 'edit');