我想在图工具栏中添加一个新的切换按钮。单击它时,我想“解开”任何其他切换的按钮。例如,如果按下“旋转”或“缩放”切换按钮,我想解开它们及其效果。 简单地获取所有句柄都不起作用,因为这不会停用它们的效果。
答案 0 :(得分:2)
您应首先找到工具栏的所有子项。您可以通过以下命令执行此操作(假设currentToggleButton
是当前切换按钮的句柄):
get( get(currentToggleButton,'Parent'),'Children');
然后执行以下操作:
set(children,'State','off');
当然,您需要将当前按钮的状态返回到on
。
set(currentToggleButton,'State','on');
顺便说一句,如果您使用的是GUIDE,则可以添加zoom
,rotate
和pan
作为预定义工具。在这种情况下,Matlab将自动处理切换。
要关闭缩放/平移/旋转的效果,您可以执行以下操作:
zoom('off')
pan('off')
rotate3d('off')
或者您可以使用其他语法版本(如@Eitan也提到)
zoom off
pan off
rotate3d off