コンポーネントを登録する
コンポーネント作成の詳細:インデックス への移動
登録は、どのコンポーネントをコンポーネント ライブラリに追加するかと、コンポーネントを[ツール パレット]のどのページに表示するかを IDE に知らせる、簡単な処理です。登録処理の詳細は、「コンポーネントを設計時に利用できるようにする」を参照してください。
コンポーネントを登録するには:
Delphi で実装されたコンポーネントを登録する手順は次のとおりです。
- コンポーネントのユニットの interface 部に Register という手続きを追加します。Register はパラメータを取らないため、宣言は非常に単純です。
procedure Register;メモ: Delphi は大文字と小文字を区別しない言語ですが、Register 手続きでは大文字と小文字が区別されるので、R は大文字で記述する必要があります。
- コードの詳細は、「コンポーネント ウィザードによるコンポーネントの作成」を参照してください。
- 既にコンポーネントが含まれているユニットにコンポーネントを追加する場合には、既に Register 手続きが宣言されているはずなので、宣言を変更する必要はありません。
- ユニットの implementation 部に Register 手続きを記述し、登録したいコンポーネントそれぞれについて RegisterComponents を呼び出します。RegisterComponents は、次に示すように、2 つのパラメータ([ツール パレット]のカテゴリの名前と、コンポーネントの型のセット)を受け取る手続きです。
procedure Register; begin Classes.RegisterComponents('MyComponents', [MyComponent]); end;既存の登録用手続きにコンポーネントを追加する場合には、既存の文のセットに新しいコンポーネントを追加しても、RegisterComponents を呼び出す新しい文を追加してもかまいません。
C++ で実装されたコンポーネントを登録するには、コンポーネントのユニットに Register という手続きを追加します。
namespace MyComponent
{
void __fastcall PACKAGE Register()
{
TComponentClass classes[1] = {__classid(TMyComponent)};
RegisterComponents("Samples", classes, 0);
}
}
コードの詳細は、「コンポーネント ウィザードによるコンポーネントの作成」を参照してください。
既にコンポーネントが含まれているユニットにコンポーネントを追加する場合には、既に Register 手続きが宣言されているはずなので、宣言を変更する必要はありません。