System.Classes.TDataModule
Delphi
TDataModule = class(TComponent)
C++
class PASCALIMPLEMENTATION TDataModule : public TComponent
プロパティ
種類 | 可視性 | ソース | ユニット | 親 |
---|---|---|---|---|
class | public | System.Classes.pas System.Classes.hpp |
System.Classes | System.Classes |
説明
TDataModule は、アプリケーション内の非ビジュアル コンポーネントの処理を集中管理するものです。
アプリケーション内で TDataModule オブジェクトを使用すると、そこで非ビジュアル コンポーネントの処理を集中管理することができます。通常、管理対象は TSQLDataSet や TSQLConnection といったデータ アクセス コンポーネントです。ただし、データ モジュールは、データ アクセス コンポーネントに限らず、TTimer、TOpenDialog、TImageList といった他の非ビジュアル コンポーネントも含むことができます。
設計時の TDataModule オブジェクトは、非ビジュアル コンポーネントを配置してそのプロパティを設定したりイベント ハンドラを記述するための、ビジュアルなコンテナとなります。設計時にデータ モジュールを作成するには、既存アプリケーションで次のメニューを選択します。
- [ファイル|新規作成|その他...|<パーソナリティ> ファイル|データ モジュール]
この <パーソナリティ> は、Delpi または C++Builder です。
データ モジュールのユニット ファイルには、アプリケーションに適用されるビジネス ルールも配置することができます。
アプリケーション内の別のユニットからデータ モジュールを使用できるようにするには、そのユニットを選択し、次のいずれかを選択します。
- [ファイル|ユニットを使う...](Delphi で作業をしている場合)
- [ファイル|ユニットを使う...](C++ で作業をしている場合)
これにより、ユニットの uses 句にデータ モジュールが追加されます。
メモ: XE2 リリースのデータ モジュールはプラットフォーム非依存です。つまり、基本となる同じデータ モジュールをどのフレームワークにも使用することができます。TDataModule には ClassGroup という疑似プロパティがあり、データ モジュールと一緒に使用する関連するフレームワークをそこに指定することができます。フレームワーク固有の非ビジュアル コンポーネントの場合にはこれが非常に重要です。ClassGroup 疑似プロパティでは、どのフレームワーク固有の非ビジュアル コンポーネントを[ツール パレット]で使用できるようにするかを制御します。
たとえば、ClassGroup 疑似プロパティが Vcl.Controls.TControl(フレームワーク固有)ではなく System.Classes.TPersistent(フレームワーク非依存)であるデータ モジュールでは、VCL 非ビジュアル コンポーネントの TActionList が[ツール パレット]に表示されません。詳細は、「TDataModule の ClassGroup 疑似プロパティ」を参照してください。
ClassGroup 疑似プロパティは、IDE でのみ使われるもので、データ モジュールと特定のコンポーネント フレームワークとの関係を示します。IDE はこれを使ってデータ モジュール上にドロップできるコンポーネントの種類を限定します。