在ClientDataSet.filter中数字和英文过滤有效,但在中文过滤无效,why???
如:ClientDataSet.filter := 'field like ''%中文%''';

解决方案 »

  1.   

    貌似filter有BUG,在ClientDataSet的OnFilterRecord事件中勉强解决一下算了:procedure TForm1.ClientDataSet1FilterRecord(DataSet: TDataSet;
      var Accept: Boolean);
    var
        strTemp: String;
    begin
        strTemp := DataSet.FindField('字段名').AsString;
        if Pos('中文', strTemp) <> 0 then
            Accept := True
        else
            Accept := false;
    end;
      

  2.   

    用 OnFilterRecord 啦
    中文% 这样就可以, 前面的 % 代码所有了, 所以就全出来了