テーブルの表示(プログラムによる)
テーブルの表示は、DBNavigatorなどのコンポーネントを使うと簡単にできますが、細かな処理を行うときは、プログラムで処理する必要があります。
次の例は、DBNavigatorの代わりにボタン(Buttonコンポーネント)を使って、DBTextコンポーネントではなく、ふつうのラベル(Labelコンポーネント)にテーブル内容を表示するものです。
例
unit Main;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, DBCtrls, Db, DBTables;
type
TForm1 = class(TForm)
Table1: TTable;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
btnFirst: TButton;
btnPrior: TButton;
btnNext: TButton;
btnLast: TButton;
lblID: TLabel;
lblTitle: TLabel;
lblType: TLabel;
lblContent: TLabel;
lblDate: TLabel;
procedure FormCreate(Sender: TObject);
procedure btnFirstClick(Sender: TObject);
procedure btnPriorClick(Sender: TObject);
procedure btnNextClick(Sender: TObject);
procedure btnLastClick(Sender: TObject);
private
{ Private 宣言 }
procedure ShowThem;
public
{ Public 宣言 }
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
{ フォームが作成されたとき }
procedure TForm1.FormCreate(Sender: TObject);
begin
Table1.DatabaseName := 'MyDB';
Table1.TableName := 'MyTable';
Table1.Active := True; // テーブルを開く
ShowThem;
end;
{ 先頭へ移動 }
procedure TForm1.btnFirstClick(Sender: TObject);
begin
Table1.First;
ShowThem;
end;
{ 前へ移動 }
procedure TForm1.btnPriorClick(Sender: TObject);
begin
Table1.Prior;
ShowThem;
end;
{ 次へ移動 }
procedure TForm1.btnNextClick(Sender: TObject);
begin
Table1.Next;
ShowThem;
end;
{ 最後へ移動 }
procedure TForm1.btnLastClick(Sender: TObject);
begin
Table1.Last;
ShowThem;
end;
{ レコードを表示 }
procedure TForm1.ShowThem;
begin
lblID.Caption := Table1.FieldValues['ID'];
lblTitle.Caption := Table1.FieldValues['Title'];
lblType.Caption := IntToStr(Table1.FieldValues['Type']);
lblContent.Caption := Table1.FieldValues['Content'];
lblDate.Caption := DateToStr(Table1.FieldValues['Date']);
end;
end.