2016-07-29 20 views
0

ロボットアームのテスト用にmatlab GUIを作成しました。MATLAB GUIでパネルをグレーアウトする方法

プログラムが実行される前に、プログラムは、confファイル入力ブラウズと結果ファイルブラウズ設定の最初のパネル、ロボット入力用の第2パネルなどのいくつかの設定を待ちます。

私はこのように5つのパネルを持っており、次のボタンをクリックした後、パネルをグレイアウトして1つずつ開きたいと考えています。

私が試してみました:理由はパラメータを有効にすると、パネルには適していません

set(hObject,'Enable','off'); 
drawnow; 

しかし、これらのソリューションは、動作しません(名前は[有効にする]クラス「のUipanel」のインスタンスのアクセスプロパティではありません。) 。

パネルの解決策が見つかりませんでした。提案はありますか?

set(get(hObject,'Children'),'Enable','off') 

これは、すべての子オブジェクトは、プロパティを有効に設定します:

答えて

1

uipanel子供たちにEnableプロパティを設定してみてください(次のパネルは、前のパネルで次のプッシュボタンをクリックした後、日陰をオフになります)。それは、最初のオープニングのために働く

% extract all children 
children = get(hObject,'Children'); 
% only set children which are uicontrols: 
set(children(strcmpi (get (children,'Type'),'UIControl')),'enable','off') 
+0

より完全な方法は、のuicontrolである子どもたちをチェックするために、これを拡張することであろう。そのような方法でコードを設定するにはどうすればいいですか?2.パネルに1.と3.パネルが陰になり、各パネルに次と前のボタンがあります。どのようにして、ボタンの下でパネルにグレーアウト表彰を送るのですか? –

+0

各パネル(およびそれぞれの子供)の適切なハンドルにリンクする必要があります。それらはおそらくハンドル構造に格納されます – matlabgui

関連する問題