1

MSACCESSデータベースへのOLEDB4​​.0接続を使用してDelphiXE3アプリケーションを作成しています。これらのテーブルにいくつかの情報を保存しましたが、今度は「コンテンツ検索フォーム」を作成したいと思います。

ユーザーがデータベース上の各テーブルの内容を検索する方法を選択するためのラジオグループが必要です。のように:名前、日付、または年齢で。次に、ユーザーがその特定のテーブルで探しているものを動的に入力できるようにTEditを用意します。

TADOconnectionとADOtablesを使用しています。

4

1 に答える 1

2

あなたが3つの列を持っていると仮定すると、、あなたはNameこのDateようAgeなことを試みるかもしれません。間隔が検索語の書き込み間隔(たとえば1000ミリ秒)に設定されたタイマーが必要です。次に、3つのアイテムを含むラジオグループが必要です。1つ目は名前、2つ目は日付、3つ目は年齢検索語の選択です。次に、検索編集ボックス自体を用意し、次のイベントを処理する必要があります。

procedure TForm1.Edit1Change(Sender: TObject);
begin
  Timer1.Enabled := False;
  Timer1.Enabled := True;
end;

procedure TForm1.RadioGroup1Click(Sender: TObject);
begin
  Timer1.Enabled := False;
  Timer1.Enabled := True;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
  Timer1.Enabled := False;
  ADOTable1.Filtered := False;
  if Edit1.Text <> '' then
  begin
    case RadioGroup1.ItemIndex of
      0: ADOTable1.Filter := 'Name';
      1: ADOTable1.Filter := 'Date';
      2: ADOTable1.Filter := 'Age';
    end;
    ADOTable1.Filter := ADOTable1.Filter + ' LIKE ' + QuotedStr(Edit1.Text);
    ADOTable1.Filtered := True;
  end;
end;
于 2013-01-29T22:35:49.753 に答える