0

自从我在 Delphi 中进行任何编程以来已经有一段时间了,我一直在寻找一些关于如何通过在编辑框中输入搜索词来增量搜索 dbgrid 的示例,我发现以下代码似乎可以解决问题大部分,但它检查网格中每一列的过滤条件,我想限制过滤条件,所以它只检查网格中的一列(例如第 1 列),我将如何使用提供的代码来做到这一点?

procedure TForm1.Edit1Change(Sender: TObject);
begin
  FDTable1.Filtered := false;
  FDTable1.Filtered := Edit1.Text <> '';
end;

procedure TForm1.FDTable1FilterRecord(DataSet: TDataSet;
  var Accept: Boolean);
var
  i: integer;
begin
  for i := 0 to DataSet.FieldCount - 1 do begin
    Accept := Pos(UpperCase(Edit1.Text),
      UpperCase(DataSet.Fields[i].AsString)) = 1;
    if Accept then exit;
  end;
end;
4

0 回答 0