close
1 つ以上の Figure を閉じる
説明
close
は、現在の Figure を閉じます。close
を呼び出すことは close(gcf)
を呼び出すことと同等です。
close all
はハンドルが表示されているすべての Figure を閉じます。HandleVisibility
プロパティが 'callback'
または 'off'
に設定されている場合、Figure ハンドルは非表示です。
close all hidden
は、ハンドルが非表示の Figure を含むすべての Figure を閉じます。
close all force
は、ユーザーにより Figure ウィンドウが閉じられることを防ぐために CloseRequestFcn
コールバックが指定されている Figure を含めた、すべての Figure を閉じます。
status = close(___)
は前述の任意の構文に対して閉じる操作の status
を返します。関数は Figure が閉じた場合 1
を返し、そうでない場合は 0
を返します。出力 status
を指定する場合は、文字ベクトルである入力引数を status = close('all','hidden')
のようにかっこで囲まなければなりません。
例
入力引数
ヒント
すべての Figure を無条件で削除するには、以下のステートメントを使用します。
set(groot,'ShowHiddenHandles','on') c = get(groot,'Children'); delete(c)
CloseRequestFcn
コールバックを実装する場合、close
への呼び出しを使用しないでください。コールバックの本文でclose
を呼び出すと、再帰が設定され、結果的に MATLAB の警告が表示されます。代わりに、関数delete
を使用してコールバックを実装します。delete
はCloseRequestFcn
コールバックを実行せずに Figure を削除します。CloseRequestFcn
プロパティを指定せずに Figure でclose
を呼び出すと、プロパティの既定値であるclosereq
は Figure を無条件で削除し、そのウィンドウを閉じます。close
を呼び出すときに削除しないようにするには、CloseRequestFcn
コールバックを実装します。
アルゴリズム
関数 close
は、次のステートメントを使用して指定された Figure f
の CloseRequestFcn
プロパティを評価します。
eval(get(f,'CloseRequestFcn'))
CloseRequestFcn
により、close
が呼び出された後に Figure が閉じるのを遅らせたり破棄することができます。たとえば、ダイアログ ボックスを表示し、Figure を本当に閉じてもよいか、あるいは閉じる前に保存とクリーン アップを行うかを確認することも可能です。
CloseRequestFcn
の既定値である closereq
は、delete(get(groot,'CurrentFigure'))
を使用して現在の Figure を閉じます。Figure ハンドルの配列を指定する場合、close
は各 Figure に対する CloseRequestFcn
で指定されたコールバックを実行します。
エラーによって CloseRequestFcn
コールバックの実行が強制終了されると、Figure は閉じられません。
バージョン履歴
R2006a より前に導入