フォームの追加
メイン フォームの使用 への移動
フォームをプロジェクトに追加するには、作成するアプリケーションの種類に応じて、 [ファイル|新規作成|VCL フォーム]または[ファイル|新規作成|マルチデバイス フォーム]のいずれかを選択します。プロジェクトのフォームやそれに関連するユニットはすべて、[プロジェクト マネージャ]( [表示|プロジェクト マネージャ])に表示されます。また、フォームだけの一覧は [表示|フォーム...]を選択すると表示されます。
フォームのリンク
フォームをプロジェクトに追加すると、フォームの参照がプロジェクト ファイルに追加されますが、プロジェクト内の他のユニットには追加されません。追加したフォームを参照するコードを記述するには、そのフォームの参照を参照元のフォームのユニット ファイルに追加する必要があります。これをフォームのリンクと呼びます。
一般的に、フォームをリンクするのは、そのフォーム内のコンポーネントにアクセスするためです。たとえば、フォームをリンクすると、データ対応コンポーネントを含むフォームを、データ モジュール内のデータ アクセス コンポーネントに接続することができます。
フォームを別のフォームにリンクするには:
- 別のフォームを参照する必要があるフォームを選択します。
- [ファイル|使用するユニット...]を選択します。
- 参照先のフォームのフォーム ユニットの名前を選択します。
- [OK]をクリックします。
フォームを別のフォームにリンクするとは、一方のフォーム ユニットが他方のフォーム ユニットのヘッダーを含むということです。つまり、リンクされたフォームやそのコンポーネントが、リンクしたフォームのスコープに含まれることになります。
フォームを別のフォームにリンクするとは、一方のフォーム ユニットの uses 句が他方のフォーム ユニットの参照を含むということです。つまり、リンクされたフォームやそのコンポーネントが、リンクしたフォームのスコープに含まれることになります。
ユニットの循環参照の回避
2 つのフォームが互いに相手を参照しなければならない場合、プログラムをコンパイルすると "循環参照" エラーが発生する可能性があります。このようなエラーを回避するには、以下のいずれかを行ってください。
- 両方の uses 句(ユニット識別子を含むもの)を、それぞれのユニット ファイルの implementation 部に置く ([ファイル|使用するユニット...]コマンドの動作と同じです)。
- 一方は uses 句を interface 部に、他方は implementation 部に置く (ほとんどの場合、ユニットの interface 部に別のフォームのユニット識別子を置く必要はありません)。
両方の uses 句をそれぞれのユニット ファイルの interface 部に置かないでください。置いてしまうとコンパイル時に "循環参照" エラーが発生します。