API:Vcl.Forms.TForm.OnClose
Delphi
property OnClose: TCloseEvent read FOnClose write FOnClose stored IsForm;
C++
__property OnClose;
プロパティ
種類 | 可視性 | ソース | ユニット | 親 |
---|---|---|---|---|
event | published | Vcl.Forms.pas Vcl.Forms.hpp |
Vcl.Forms | TForm |
説明
フォームを閉じたときに発生します。
Vcl.Forms.TForm.OnClose は Vcl.Forms.TCustomForm.OnClose を継承しています。以下の内容はすべて Vcl.Forms.TCustomForm.OnClose を参照しています。
フォームを閉じたときに発生します。
OnClose イベントハンドラを記述すると,フォームを閉じたときに特別な処理が実行されるようにすることができます。OnClose イベントはフォームを閉じようとしたときに呼び出されるイベントハンドラを指定します。たとえば,データ入力フォームを閉じる前にフォーム内のすべての項目に有効な内容が入っているかどうかをテストするハンドラを OnClose で指定できます。
フォームは Close メソッドによって,またはユーザーがフォームのシステムメニューで[閉じる]を選択したときに閉じます。
TCloseEvent は,フォームを閉じようとしたときに発生するイベントで呼び出されるメソッドへのポインタです。Action パラメータの値はフォームを実際に閉じるどうかを決めます。Action には次の値があります。
値 | 意味 |
---|---|
caNone |
フォームを閉じることができないので何も起きない |
caHide |
フォームは閉じないで単に隠される。アプリケーションは隠れたフォームに引き続きアクセスできる |
caFree |
フォームは閉じ,そのフォームに割り当てたすべてのメモリが解放される |
caMinimize |
フォームは閉じないでアイコン化される。MDI 子フォームの場合はこれがデフォルトである |
フォームが MDI 子フォームで,BorderIcons プロパティが biMinimize ならば,Action のデフォルト値は caMinimize です。MDI 子フォームにこの設定がない場合は,Action のデフォルト値は,ユーザーがフォームを閉じようとする前に何も起きないことを示す caNone です。
フォームが SDI 子フォームならば,Action のデフォルト値は caHide です。
フォームを閉じて,OnClose イベントでフォームを解放するには,Action を caFree に設定します。
メモ: アプリケーションがシャットダウンされると,メインフォームは OnClose イベントを受信しますが,子フォームは OnClose イベントを受信しません。