Classes.TComponent.Destroy

From RAD Studio VCL Documentation (Japanese)
Jump to: navigation, search

Contents

Delphi の情報

ファイル Classes.pas

	destructor Destroy();


ユニット: Classes

種類: デストラクタ

可視性: public

所属クラス: TComponent

C++ の情報

ファイル Classes.hpp

	virtual void __fastcall ~TComponent(void);


ユニット: Classes

種類: デストラクタ

可視性: public

所属クラス: TComponent

説明

コンポーネントとその所有コンポーネントを破棄します。


直接 Destroy メソッドを呼び出さないでください。かわりに,Free メソッドを呼び出してください。コンポーネントが nil でないことを確認した場合にのみ Destroy を呼び出します。

コンポーネント自体のイベントハンドラ内でそのコンポーネントを明示的に解放したり,コンポーネントが所有または包含するコンポーネントのイベントハンドラからコンポーネントを解放することはできません。

フォームを解放するには Release メソッドを呼び出します。Release は,フォームのすべてのイベントハンドラおよびフォームが所有するコンポーネントのイベントハンドラの処理が終了した後に,フォームを破棄して割り当てられていたメモリを解放します。

メモ:  フォームは,すべてのコントロールと,それに配置されている非ビジュアルコンポーネントをすべて所有しています。フォームを解放すると,これらすべてのコンポーネントも自動的に解放されます。デフォルトでは,すべてのフォームはアプリケーションオブジェクトによって所有されます。アプリケーションが終了すると,~TComponent デストラクタは,すべてのフォームを解放するアプリケーションオブジェクトを解放します。コンポーネントではないオブジェクトや,nil オーナーによって作成されたコンポーネントでは,オブジェクトを終了した後に必ず Free メソッドを呼び出してください。Free メソッドを呼び出さないと,そのオブジェクトに割り当てられていたメモリはアプリケーションが終了するまで失われた状態になります。

関連リンク

Personal tools