Next: , Previous: , Up: フレーム   [Contents][Index]


30.7 フレームの削除

生きたフレーム(live frame)とは削除されていないフレームのことです。フレームが削除される際には、たとえそれへの参照元がなくなるまでLispオブジェクトとして存在し続けるとしても端末ディスプレイからは削除されます。

Command: delete-frame &optional frame force

この関数はフレームframeを削除する。引数frameは生きたフレーム(以下参照)を指定しなければならず、デフォルトは選択されたフレーム。

この関数はまずframeのすべての子フレーム(子フレームを参照)とフレームパラメーターdelete-before (フレームとの相互作用のためのパラメーターを参照)がframeを指定するすべてのフレームを削除する。祖先としてframeをもつフレームが他に存在しないことを保証するために、このような削除はすべて再帰的に行われる。その後にframeがツールチップを指定していなければ、実際にフレームをkillする前にフックdelete-frame-functionsを実行する(フックの各関数は単一の引数としてframeを受け取る)。delete-frameは実際にフレームをkillしてフレームリストからフレームを削除した後にafter-delete-frame-functionsを実行する。

フレームのミニバッファーが別のフレームの代替えミニバッファー(ミニバッファーとフレームを参照)の役割をもつかぎりフレームを削除できないことに注意。他のフレームすべてが不可視なら通常はフレームは削除できないが、forceが非nilなら削除が可能になる。

Function: frame-live-p frame

この関数はフレームframeが削除されていなければ非nilをリターンする。リターンされ得る非nilの値はframepと同様。フレームを参照のこと。

いくつかのウィンドウマネージャーはウィンドウを削除するコマンドを提供します。これらはそのウィンドウを操作するプログラムに特別なメッセージを送ることにより機能します。Emacsがそれらメッセージのいずれかを受け取ったときはdelete-frameイベントを生成します。このイベントの通常の定義は関数delete-frameを呼び出すコマンドです。その他のシステムイベントを参照してください。

Command: delete-other-frames &optional frame iconify

このコマンドはframeの端末上からframe以外のすべてのフレームを削除する。frameが別のフレームのミニバッファーを使用している場合には、そのミニバッファーフレームは処理せずに残る。引数frameは生きたフレームを指定しなければならず、デフォルトは選択されたフレーム。このコマンドは内部的には削除するすべてのフレームにたいして、forcenilを指定してdelete-frameを呼び出すことにより機能する。

この関数はframeの子フレームは削除しない(子フレームを削除)。frameが子フレームならframeの兄弟だけを削除する。

プレフィックス引数iconifyを指定するとフレームを削除せずにアイコン化する。

This page has generated for branch:emacs-29, commit:b0a5c33c8a12c381efbc6afce1b387feb85afaee to check Japanese translation.