データ表示をカスタマイズする(コード不要の IBX チュートリアル)

提供: RAD Studio
移動先: 案内検索

チュートリアル:InterBase Express を使用してコードを書かずにアプリケーションを作成する への移動

前のセクションの TDBGrid には、データベース内のメタデータとデータがそのままの形で表示されています。 このセクションでは、データの表示をカスタマイズします。

可能なカスタマイズ

データベース メタデータには SPECIES_NO、CATEGORY、COMMON_NAME などのフィールド名が含まれていて、その名前が TDBGrid のヘッダーとして表示されます。 アプリケーション上では別の名前で表示した方がいいかもしれません。

また、すべてのデータ フィールドを表示する必要がないかもしれません。 デフォルトでは、ほとんどのデータベース フィールドが TDBGrid に表示されます。 ここでは、TDBGrid から SPECIES_NO の列を取り除きたいとします。

データ表示をカスタマイズするには、アプリケーションで使用したいフィールドを指定します。 そのフィールド リストには、テーブルのフィールドのサブセットを指定することができます。 また、フィールド リストの項目を変更すると、フィールド名などのメタデータの表示方法を変更することもできます。

フィールド リストの作成と変更

フィールド エディタを表示するには、フォーム デザイナ上で TIBDataSet コンポーネントをダブルクリックします。 最初は、フィールドが何も含まれていません。

  • フィールド エディタの空のフィールド リストを右クリックします。 コンテキスト メニューから[フィールドの追加...]を選択します。 [フィールドの追加]ダイアログが開き、そこにテーブル内のすべてのフィールドが一覧表示されます。
  • このアプリケーションで SPECIES_NO フィールドを使用しない場合には、Ctrl キーを押しながら SPECIES_NO フィールドをクリックして、選択を解除します。
FieldsEdt-InterBaseExpress.png

AddFieldsEdt-InterBaseExpress.png


  • [OK]をクリックしてフィールド リストを承認し、[フィールドの追加]ダイアログを閉じます。 これで、[フィールドの追加]ダイアログで選択したフィールドがすべて、フィールド エディタに表示されます。

RAD Studio の左上にある[構造]ビューには、フォームのコンポーネントの概要が階層構造で表示され、その中にテーブルのフィールドも含まれています。 次の図を見ると、"IBDataSet1" ノードの下の Fields リストには、先ほど追加したフィールドしか含まれていないことがわかります。 また、TDBGrid には、SPECIES_NO フィールドが表示されなくなっています:

StructureView-InterBaseExpress.png

作成したフィールド リストをカスタマイズすることができます。

フィールドの順序は、2 つの方法で変更することができます。

  • フィールド エディタで、フィールド名をリスト内の新しい場所にドラッグします。
  • [構造]ビューで、"IBDataSet1" の下のフィールド リスト内のフィールドを、リスト内の新しい場所にドラッグします。

たとえば、COMMON_NAME を LENGTH_IN の後にドラッグします。 フィールド リストに合わせて、TDBGrid のフィールドの順序が変更されます。

また、TDBGrid に表示される列ヘッダーを変更することもできます。

  • フィールド エディタで CATEGORY を選択します。 この項目は、TStringField を継承した TIBStringField を表しています。
  • [オブジェクト インスペクタ]で、DisplayLabel プロパティを "Category" に変更します。 この変更を行うと、TDBGrid の列名も "Category" に変更されます。 「DisplayLabel」も参照してください。
  • 残りのフィールドの DisplayLabel も、次のように新しい値に変更します。
フィールド名 DisplayLabel

CATEGORY

Category

SPECIES_NAME

Species Name

LENGTH__CM_

Length (cm)

LENGTH_IN

Length (in)

COMMON_NAME

Common Name

NOTES

Notes

GRAPHIC

Graphic

TDBGrid リストの変更

TDBGrid コンポーネントを右端までスクロールすると、NotesGraphic の列が現れます。 この 2 つのフィールドのデータは、TDBGrid コンポーネントに表示するのにふさわしくありません。 NotesGraphic のフィールドは、それぞれに合った他のコンポーネントにすでに表示されています。 つまり、画像は TDBImage に、メモ テキストは TDBText に表示されています。

SPECIES_NO フィールドを TDBGrid から消したときには、フィールド リストに SPECIES_NO フィールドを含めないという方法で行いました。 しかし、NOTES フィールドと GRAPHIC フィールドはフィールド リストから削除したくありません。削除するとアプリケーションでまったく使用できなくなるからです。 NOTES と GRAPHIC の列を TDBGrid に表示したくないだけです。

そのためには、フィールド エディタで NOTES の項目を選択します。 [オブジェクト インスペクタ]で、Visibleを False に変更します。 GRAPHIC の項目についても同じようにします。 これで、どちらのフィールドも TDBGrid に表示されなくなりました。

これでアプリケーションの作成は終わりです。 コードは 1 行も書く必要がありませんでした!

設計時のデータベース レコードの表示

TIBDataSet.Active プロパティを True に設定すると、データ対応コントロールにデータベースの情報を表示させることができます。 最初は最初のレコードしか表示されません。 他のデータベース レコードは、次の 2 つの方法で表示できます。

  • TDBGrid のスクロールバーを使用します。 スクロールすると、行単位、またはページ単位で別のレコードが表示されます。
  • フィールド エディタを使用します。 フィールド エディタ ダイアログには上部にナビゲーション ボタンがあります。 これらのコントロール ボタンをクリックすると、最初、前、次、最後のデータベース レコードが表示されます。

前へ

ビジュアル コンポーネントの追加

次へ

アプリケーションの実行