zoukankan      html  css  js  c++  java
  • cxGrid FilterRow 添加左模糊查询,实现 %ABC%

    参考了 踏雪无痕 的资料 :http://blog.csdn.net/zengcong2013/article/details/12343171

    由于 cxGrid 中,使用较多是 cxGridDBTableView 因此调整了一下,更方便 Ctrl V

     --------------------------------------------------------------------------------------------------------

    cxGrid 的FilterRow 默认是右匹配模糊查询,即 ABC%

    因此需要添加代码,实现 %ABC% 左右模糊查询

    1、主要处理的过程为

    procedure SetCustomFilterRow(cxGridTableView: TcxGridDBTableView);
    var
      I: Integer;
      S: string;
    begin
      with cxGridTableView, ViewData do
      begin
        if FilterRow.Focused then
        begin
          for I := 0 to ColumnCount - 1 do
          begin
            S := VarToStr(FilterRow.Values[I]);
            if (Length(S)> 0) and (S[1] <> '%') then
              FilterRow.Values[I] := '%' + S;
          end;
        end;
      end;
    end;

    2、在 cxGridDBTableView1的 Event—>DataTontroller—>Filter—>OnChanged

    添加代码

    procedure TForm1.cxGridDBTableView1DataControllerFilterChanged(Sender: TObject);
    begin
      SetCustomFilterRow(cxGridDBTableView1);
    end;

  • 相关阅读:
    20150324--Mysql索引优化-02
    20150324--Mysql索引优化-01
    20150323--memcache-02
    20150323--memcache-01
    轮播效果/cursor
    事件监听和事件概念
    BOM与DOM操作
    for循环语句/命名函数
    数组/控制语句
    数据类型转换/正则表达式
  • 原文地址:https://www.cnblogs.com/K-R-/p/8376321.html
Copyright © 2011-2022 走看看