matlab – 取消所有图形工具栏按钮

我想在图工具栏中添加一个新的切换按钮.单击它时,我想“解开”任何其他切换的按钮.例如,如果按下“旋转”或“缩放”切换按钮,我想解开它们及其效果.

简单地获取所有句柄不起作用,因为这不会停用它们的效果. 最佳答案 你应该首先找到工具栏的所有子项.您可以通过以下命令执行此操作(假设currentToggleButton是当前切换按钮的句柄):

 get( get(currentToggleButton,'Parent'),'Children');

然后执行以下操作:

  set(children,'State','off'); 

当然,您需要将当前按钮的状态恢复为打开状态.

  set(currentToggleButton,'State','on');

顺便说一句,如果您使用GUIDE,则可以添加缩放,旋转和平移作为预定义工具.在这种情况下,Matlab将自动处理切换.

为了关闭缩放/平移/旋转的效果,您可以执行以下操作:

 zoom('off')
 pan('off')
 rotate3d('off')

或者你可以使用另一种语法版本(如@Eitan也提到)

 zoom off
 pan off
 rotate3d off
点赞