• 検索結果がありません。

リストの表示

ドキュメント内 4th Dimension 2004 (ページ 161-165)

あらゆるタイプのレコードリストに対し、「リスト更新」モードを利用できるようになり ました。今までは、「ユーザ」モードでのみこのモードを使用できました。

■ サブフォームに関しては、サブフォームオブジェクトを選択すると、「リスト更新」

モードを適用することができます。

MODIFY SELECTIONコマンドとDISPLAY SELECTIONコマンドを使用したリスト フォームについては、新しいパラメータを用いて選択モードを設定することができま す(後述の「MODIFY SELECTION、DISPLAY SELECTION」の節を参照)。

■「ユーザ」モードのリストフォームでは、「リスト更新」プロパティが自動的に有効に なります。

「リスト更新」モードでは、入力フォームを使わなくてもリスト上のレコードデータを直 接修正することができます。修正を行うには、編集するフィールドをクリックします。

すべてのリストに対し、デフォルトとして「リスト更新」モードが有効になっています。

ユーザが行をクリックして編集可能な状態にすると、対応するデータがロードされます。

フォームとオブジェクトメソッドが呼び出され、新しい「On  selection  change」フォーム イベントが生成されます(後述の「レコードリストにリンクしたフォームイベント」の 節を参照)。

リストの表示

4th  Dimension  2004 では、レコードリスト表示のメカニズムが最適化されています。次の 事柄が変更されています。

■ フォームイベントの起動

■ リストフォームの各エリアで受け入れられるアクティブオブジェクト

フォームのボディにあるオブジェクト

上部がヘッダエリアから開始し、下部がブレークエリアで終わるオブジェクトは、オブ ジェクトの高さを大きくすることにより一度だけ描画されるようになります。今まで、

ボディエリアに位置する部分は反復して表示されていました。次の図に示すように、ピ クチャに関してのみこの変更が明らかになります。

フォームエディタ

4th Dimension 2003 4th Dimension 2004

このメカニズムでは、ピクチャ表示に関するプロパティが考慮されます(切り捨て、モ ザイクなど)。

空の行

リストモードでは、必要に応じて 4th  Dimension は、ウインドウ全体を埋めるように最後 の表示レコードの後ろに空の行を表示します。

空の行

また、このウインドウが表示されると、リストの空の各行に対して「On  display  detail」

フォームイベントが生成されます。この状況において、カレントレコードは存在しませ ん。Record number関数は-1 を返し、Selection number関数は有効な値を返しません。

この場合、新しいDisplayed line number関数を使用すると、現在表示されている行数を 知ることができます。

オブジェクトの表示

フォームがリストフォームである場合、「フォーム」エディタの「プロパティリスト」に おいて、新しい表示用プロパティである「表示」をすべてのオブジェクトに対して使用 することができます。

このプロパティは 3 つの値を受け入れます。

■ 常に表示

■ レコード選択時

■ レコード非選択時

このプロパティは、リストフォームのボディ部分に配置されたオブジェクトを描画する 際にのみ使用されます。このプロパティは、処理中のレコードの選択状況に応じ、オブ ジェクトの描画を行うか、または行わないかを 4th  Dimension に通知します。このプロパ ティを使用すると、カラー以外の表示属性を用いて、選択レコードを表わすことができ ます。

SET VISIBLEコマンドを使用してオブジェクトが隠されている場合、4th  Dimension はこ のプロパティを考慮しません。この場合、レコードセレクションが選択されているかど うかに関わらず、オブジェクトは非表示のままです。

最終レコードの後ろに空の行を表示する場合(前述の「空の行」の節を参照)、4th Dimension は「常に表示」プロパティまたは「レコード非選択時」プロパティを用いて、

空の各行にオブジェクトを描画します。

フォームイベントの呼び出し順序

4th  Dimension  2004 において、サブフォームのメソッドとフォームイベントの呼び出し順 序は、MODIFY SELECTIONコマンドやDISPLAY SELECTIONコマンドにより表示され たリストフォームの呼び出し順序に合わせることができました。次の節では、以前の バージョンとの相違点について説明します。

■ 4th Dimension 2004 以前のサブフォーム呼び出し 各レコードに対して:

ファイルプロシージャ(古いスキーム)

「On display detail」イベントが指定されたフォームメソッド

■ 4th Dimension 2004 のサブフォーム呼び出し(= MODIFY SELECTIONまたはDISPLAY SELECTIONで表示されたリストフォームの呼び出し)

ヘッダエリアの各オブジェクトに対して:

「On header」イベントが指定されたオブジェクトメソッド

「On header」イベントが指定されたフォームメソッド

各レコードに対して:

ボディ内の各オブジェクトに対して:

選択レコード

「On display detail」イベントが指定されたオブジェクトメソッド

「On display detail」イベントが指定されたフォームメソッド

サブフォームに対して、v3.x.x のファイルプロシージャが呼び出されなくなったことに注 意してください。

アクティブオブジェクト

リストフォームのヘッダ、ブレーク、フッタ上のアクティブオブジェクトの管理が拡張 されています。

MODIFY SELECTIONまたはDISPLAY SELECTIONにより表示されたリストフォーム およびサブフォームは、ヘッダやブレーク上のあらゆるアクティブオブジェクトを受 け入れます。

MODIFY SELECTIONまたはDISPLAY SELECTIONにより表示されたリストフォーム は、フッタ上のあらゆるアクティブオブジェクトを受け入れます。

ドキュメント内 4th Dimension 2004 (ページ 161-165)