4

Figure ツールバーに新しいトグル ボタンを追加したいと考えています。クリックすると、トグルされた他のボタンを「トグル解除」したいと思います。たとえば、「回転」または「ズーム」の切り替えボタンが押された場合、それらとその効果の切り替えを解除したいと思います。すべてのハンドルを取得するだけでは効果が無効にならないため、機能しません。

4

1 に答える 1

2

最初に、ツールバーのすべての子を見つける必要があります。currentToggleButton次のコマンドで実行できます (現在のトグル ボタンのハンドルであると仮定します)。

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

次に、次の操作を行います。

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

もちろん、現在のボタンの状態を に戻す必要がありますon

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

ところで、GUIDE を使用している場合はzoomrotatepanを定義済みのツールとして追加できます。その場合、Matlab はトグルを自動的に処理します。


ズーム/パン/回転の効果をオフにするには、次のようにします。

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

または、別の構文バージョンを使用できます(@Eitanも言及しているように)

 zoom off
 pan off
 rotate3d off
于 2012-09-27T15:36:45.950 に答える