4D v16.3

フィールドおよび変数オブジェクト

ホーム

 
4D v16.3
フィールドおよび変数オブジェクト

フィールドおよび変数オブジェクト  


 

 

フォーム上でフィールドと変数はほぼ同様に動作します。

  • フィールドはレコードのデータを表示し、また入力するため に使用します。フォームウィザードで新規フォームを作成するとき、標準オブジェクトとしてフォームに含めるフィールドを選択します。フォームを作成した ら、フォームエディターを使用して、表示フォーマットやデータ入力制御など追加のプロパティを指定できます。これらのプロパティはそれが指定されたフォー ム上でのみ有効です。同じプロパティを他のフォームでも指定できますし、別なプロパティを指定することもできます。プロパティを変更したり、追加/削除し たりできます。
  • 変数は入力可あるいは入力不可の形態をとることができ、テキスト、数値、日付、時間、ピクチャー型等のデータを受け取れます。変数ツールを使用してフォーム上に作成できます。
    フィールドと同様、変数もデータの型を入力・表示することができます。変数はデータの一時的な保存のために使用されます。例えばよくある使われ方としては、メソッドを使用した計算結果を表示する、といったものです:
     vTotal:=Quantity*Price

    計算結果を表示する変数を作成し、その名前をvTotalとしています。そしてメソッドを使用して計算を行います。
    メ ソッドを使用して入力可あるいは入力不可の変数を管理できます。入力可の変数はデータを受け入れます。フィールドに行うのと同様にデータ入力制御を設定で きます。入力されたデータはオブジェクトに割り当てられた変数に代入されます。オブジェクトの変数名を使用してデータを管理できます。
フィールドと変数は、フォーム内において異なる形式で表示することができます。具体的には以下の方法があります:

プロパティリスト内の"オブジェクト"テーマにある変数タイププロパティを使用すると、変数のデータ型を指定することができます:

この設定の主な目的は、プロパティリスト内で使用できるテーマとオプションが、データの型と対応するようにするためです。実際に変数の型そのものを決めるわけではありません。データベースをコンパイルする際には、コンパイラ テーマのコマンドを使用する必要があります。

しかしながら変数タイプ メニューは二つの特定の場合において型を指定する機能を持ち得ます:

  • ピクチャ変数: このメニューを使用すると、インタープリタモードにおいてフォームをロードする前に変数を宣言することができます(以下を参照して下さい)
  • ダイナミック変数: このメニューを使用すると、ダイナミック変数の型を宣言することができます(ダイナミック変数 を参照して下さい)

フォーム上のピクチャー変数にピクチャーを表示する際には特別なメカニズムが使用されます。そのために変数を設定する際には、その変数がピクチャーを表示するために使用されることを明確に指定しなければなりません。この指定はフォームがロードされる前 (On Loadフォームイベントよりも前に) に行う必要があります。

これを行うには、以下の方法があります:

  • フォームを呼び出す前 (例えばDIALOGコマンドを呼び出す前) にC_PICTURE(varName) を実行する
    または
  • プロパティリストの変数タイプポップアップメニューからピクチャーを選択する

これのいずれかを行わない場合、ピクチャー変数は正しくピクチャーを表示できません (インタープリターモードのみ)。

表示  

  • 変数やフィールドの大きさは必要に応じて設定できます。文字を表示する場合、その高さは設定されたフォントのサイズに基づきステップごと に設定できます。変数やフィールドには表示フォーマットを適用できます (表示フォーマット参照)。テキストやピクチャーオブジェクトには縦横のスクロールバーを付けることができ (スクロールバー参照) 可変フレームで印刷することができます (参照)。
    注: フォームにおけるテキスト変数とテキストフィールドは、"常識的な"サイズのコンテンツを表示するためにデザインされています。数万文字を超える様な場合(上限はシステムによって変わります)、フォーム内で見る事ができるのはテキストの一部だけに限られます。
  • テキストあるいは文字タイプの変数やフィールドにマルチスタイルプロパティが設定されている時、オブジェクトレベルで設定されたスタイルに加え、文字ごとにスタイルを設定することができます。詳細はGET DATA SOURCE LISTを参照してください。

いつでもフォーム上にフィールドを追加あるいは削除できます。例えば以下のようなとき、フォームにフィールドを追加する必要が生じます:

  • フォームウィザードで選択しなかったフィールドが必要になったとき。
  • データベースストラクチャーにフィールドを追加して、それをフォームで使用する必要がある時。

フォームにフィールドを追加するには:

  1. オブジェクトツールバーからフィールド挿入ツールを選択し、フォーム上にフィールドを描画する。
    4Dは自動で新しいフィールドのプロパティをプロパティリスト上に表示します。
  2. テーブル/フィールドリストから、フィールドオブジェクトに割り当てるフィールドを選択する:

    注: BLOB型のフィールドは選択できません。
  3. 必要に応じてフィールドにプロパティを指定する。
    フィールドを作成した後、通常追加のプロパティを設定する必要があります。データ入力制御、ヘルプテキスト、メソッド、リサイズ、フォント、アピアランスオプション等を設定できます (アクティブオブジェクトのプロパティ参照)。
    注: エクスプローラーのテーブルページからドラッグ&ドロップでフィールドを挿入することもできます。

新しいフィールドはあなたが配置した場所に表示されます。フィールドエリアには選択したテーブル名とフィールド名が表示されます。4Dはデフォルトでフィールドを示すラベルを配置しません。開発者がスタティックテキストエリアを使用して作成します。ラベルの内容が動的になるよう記述できる点に留意してください (スタティックテキスト中で参照を使用する参照)。

フォーム上にフィールドを配置したら、他のフォームオブジェクトと同様にサイズやフォント、フォントカラー等のプロパティを変更できます。

アクティブ、非アクティブ含め、すべてのオブジェクトタイプを他のオブジェクトタイプに変更できます。フィールドは変数に変換でき、変数はフィールドに変換できます。例えばフィールドをフォームに配置した後で、値をレコードとして格納する必要がなくなった場合、そのエリアを変数に変更できます。オブジェクトを他のオブジェクトに変更すると、オブジェクトの元のプロパティ (座標、オブジェクトメソッド、アピアランス、カラーなど) は保持されます。フィールドのデータタイプは変数のデータタイププロパティでも保持されます。ピクチャーフィールドが割り当てられたフィールドエリアを変数に変換すると、プロパティリストの変数タイプはピクチャーになります。

変数をフィールドに、フィールドを変数に変換するには、オブジェクトを選択し、プロパティリストのオブジェクトテーマからタイプドロップダウンリストでフィールドまたは変数を選択します。プロパティリストは、新しいオブジェクトタイプのプロパティを表示するために更新されます。オブジェクト名、オブジェクトメソッド、またそのプロパティ (サイズ、入力可等) には変更ありません。

変数をフィールドに変更すると、4Dはデフォルトで先頭テーブルの先頭フィールドをオブジェクトに割り当てます。データソーステーマでソーステーブルとソースフィールドを設定できます。

フィールドまたは変数に選択リストを関連付けた場合、プロパティリストの「データソース」内の関連付けのオプションを使用することが出来ます。

このオプションにより、保存するデータのサイズを最適化できるようになります。詳細な情報に関しては、 関連付け(値または参照番号)を参照して下さい。

 
プロパティ 

プロダクト: 4D
テーマ: アクティブオブジェクトを使用する

 
履歴 

 
ARTICLE USAGE

デザインリファレンス ( 4D v16)
デザインリファレンス ( 4D v16.1)
デザインリファレンス ( 4D v16.3)