オブジェクト、コンポーネント、コントロール
コンポーネント ライブラリを理解する:インデックス への移動
次の図は継承階層を非常に簡略化したもので、オブジェクト、コンポーネント、コントロールの間の関係を示しています。
簡略化された階層図
どのようなオブジェクト(クラス)も TObject から継承します。フォーム デザイナに表示できるオブジェクトは、TPersistent または TComponent から継承します。コントロールは実行時にユーザーに表示されるもので、TControl から継承します。コントロールには、グラフィック コントロールとウィンドウ付きコントロールの 2 種類があり、前者は TGraphicControl から継承し、後者は TWinControl から継承します。TCheckBox のようなコントロールは、TObject、TPersistent、TComponent、TControl、TWinControl のすべての機能を継承するほか、特化した独自の機能も備えています。
上記の図は重要な基底クラスをいくつか示しており、それらについて以下の表で説明します。
クラス | 説明 |
---|---|
VCL のあらゆるクラスの最上位に位置する基底クラス。TObject は、オブジェクトのインスタンスの作成、維持管理、破棄などの基本機能を実行するメソッドを導入することにより、すべての VCL オブジェクトに共通する基本的な動作をカプセル化します。 | |
VCL 例外に関係するすべてのクラスの基底クラス。Exception は、エラー状況についての一貫したインターフェイスを提供し、アプリケーション側でエラー状況を穏便に処理できるようにします。 | |
公開可能なプロパティを実装するすべてのオブジェクトの基底クラス。TPersistent に属するクラスは、ストリームへのデータの送信を処理するほか、クラスの割り当てを可能にします。 | |
すべてのコンポーネントの基底クラス。コンポーネントは、[ツール パレット]に追加し、設計時に操作することができます。コンポーネントは、他のコンポーネントを所有できます。 | |
実行時に表示されるすべてのコントロールの基底クラス。TControl は、すべてのビジュアル コンポーネントに共通する上位クラスであり、位置やカーソルのような標準のビジュアル コントロールを提供します。また、マウス アクションに応答するイベントも提供します。 | |
キーボード フォーカスを持つことができるすべてのコントロールの基底クラス。TWinControl に属するコントロールはウィンドウ付きコントロールと呼ばれ、TWidgetControl に属するコントロールはウィジェットと呼ばれます。 |