• GridEh Lookup


    Flexible adjustment of a lookup inplace editor

    没有输入拼音码搜索功能。

    Flexible adjustment of a lookup inplace editor

    Drop-Down Forms

    这个比较符合中国人的习惯,搜索框,不错,点下来箭头才能弹出,能不能输入字母进入搜索。

    EhLib allows to create Drop-down Forms that can be shown on pressing of edit button in the text editors.

    GridEh的列有这个事件

    curGrid->Columns->Items[0]->DropDownFormParams->DropDownForm;
    
    __property TCustomForm* DropDownForm ;
    __property UnicodeString DropDownFormClassName ;
    __property TDropDownAlign Align ;
    __property TDropDownPassParamsEh PassParams ;
    __property UnicodeString PassFieldNames ;
    __property UnicodeString AssignBackFieldNames ;
    __property int FormWidth ;
    __property int FormHeight ;
    __property bool SaveFormSize ;
    
    void __fastcall TFrm::DBGridEh1Columns0OpenDropDownForm(TCustomDBGridEh *Grid, TColumnEh *Column, TEditButtonEh *Button, TCustomForm *&DropDownForm, TDynVarsEh *DynParams)

    Drop-Down Forms

    TDBLookupComboboxEh

    Search panel

    DBGridEh can display a special panel to search and filter the data in the grid.

    curGrid->SearchPanel->FilterOnTyping,以下属性,很好用。

    __property bool Enabled ;
    __property bool PersistentShowing ;
    __property TShortCut ShortCut;
    __property TSearchPanelLocationEh;
    __property bool FilterOnTyping;//输入字母实时过滤
    __property bool FilterEnabled;

    Search panel

    Data grouping

    Grid allows to group data using columns as a criterion of grouping.

    It is allowed to display a grid summarizing the records for each group, and the overall record summarizing the bottom of the grid.

    需要用到MemTableEh1,DataSetDriverEh1,用普通的adoquery和fdmemtable,clientdataset不能显示。用memtableeh就可以分组了。

    DBGridEh2->DataGrouping

        __property bool Active  ;
        __property TGridDataGroupLevelsEh* GroupLevels  ;
        __property TGridDataGroupFootersEh* Footers  ;
        __property TGridDataGroupFootersDefValuesEh* FootersDefValues  ;
        __property bool GroupPanelVisible  ;
        __property bool DefaultStateExpanded  ;
        __property TGridDataGroupRowDefValuesEh* GroupRowDefValues  ;
        __property bool ShiftFolldataGroupRow  ;

    From http://ymg97526.blog.163.com/blog/static/173658160201122695449603/

    procedure TForm1.FormCreate(Sender: TObject);
    
    var i:Integer;
    
    begin
    
    //DBGridEh1.Flat:=True;
    
    DBGridEh1.ColumnDefValues.Title.Alignment:=taCenter;
    
    DBGridEh1.DataSource:=DataSource1;
    
    DataSource1.DataSet:=MemTableEh1;
    
    MemTableEh1.DataDriver:=DataSetDriverEh1;
    
    MemTableEh1.CachedUpdates:=True;
    
    MemTableEh1.FetchAllOnOpen:=True; //打开获取所有记录
    
    DataSetDriverEh1.ProviderDataSet:=ADOQuery1;
    
    ADOQuery1.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;'+
    
              'Data Source=f:mcmygs.mdb;'+
    
              'Persist Security Info=False;'+
    
              'Jet OLEDB:Database Password=123456';
    
    ADOQuery1.Close;
    
    ADOQuery1.SQL.Text:='Select cyear,cmonth,fphm,bhsje,se,jshj from zyfp';
    
    ADOQuery1.Open;
    
    MemTableEh1.Active:=True;
    
    DBGridEh1.DataGrouping.Active:=True;
    
    //DBGridEh1.DataGrouping.DefaultStateExpanded:=True; //默认为展开状态
    
    DBGridEh1.DataGrouping.GroupPanelVisible:=True;
    
    DBGridEh1.DataGrouping.GroupLevels.Add.Column:=DBGridEh1.Columns[0];
    
    DBGridEh1.DataGrouping.GroupLevels.Add.Column:=DBGridEh1.Columns[1];
    
    //DBGridEh1.Columns[0].Visible:=False;
    
    //DBGridEh1.Columns[1].Visible:=False;
    
    DBGridEh1.DataGrouping.Font.Style:=[fsBold];
    
    //DBGridEh1.DataGrouping.Color:=clSkyBlue;
    
    DBGridEh1.TitleFont.Color:=clBlue;
    
    DBGridEh1.GridLineColors.DarkColor:=clRed;
    
    //DBGridEh1.GridLineColors.BrightColor:=clBlack;
    
    DBGridEh1.ColumnDefValues.Title.Alignment:=taCenter;
    
    for i:=0 to MemTableEh1.Fields.Count-1 do
    
      begin
    
        if MemTableEh1.Fields[i].DataType=ftFloat then
    
           DBGridEh1.Columns[i].DisplayFormat:='#,###,###.00';
    
      end;
    
    end;
    View Code

      

    Data grouping

    DropDown filter list

     Grid allows to filter data using a droped down list box where users can select items for filtering using checkboxes.

    DBGridEh2->STFilter->Visible;

    还是要用MemTableEh1才起作用。

        __property bool InstantApply  ;
        __property bool Local  ;
        __property TSTFilterLocationEh Location  ;
        __property bool Visible  ;
        __property TColor HorzLineColor  ;
        __property int RowHeight  ;
        __property int RowLines  ;
        __property TColor VertLineColor  ;
        __property TDBGridFilterButtonDrawTimeEh FilterButtonDrawTime  ;

    DropDown filter list

    ObjectInspector Form

    Global function to display a ObjectInspector-like Form.
    This is a simple ObjectInspector that can be used to debug
    property setting at run-time。

    TObjectInspectorEh

    添加CommonObjectInspectorEh.pas文件,写2行代码就OK,我只能说太方便了。

    TRect rect(10, 10, 500, 500);
    ShowObjectInspectorForm(curGrid, rect, false);

    ObjectInspector Form

  • 相关阅读:
    C# QRCode、DataMatrix和其他条形码的生成和解码软件
    windows系统 安装MongoDB 32位
    ubuntu下创建c语言程序之hello world
    ueditor 添加微软雅黑字体 异常“从客户端中检测到有潜在危险的 request.form值”,解决
    asp.net ueditor 图片上传路径问题解决
    C# winform线程的使用 制作提醒休息小程序(长时间计算机工作者必备)
    jquery.qrcode和jqprint的联合使用,实现html生成二维码并打印(中文也ok)
    javascript陷阱之in语句
    谈谈Python的深拷贝和浅拷贝
    Flask开启多线程、多进程
  • 原文地址:https://www.cnblogs.com/cb168/p/4314973.html
Copyright © 2020-2023  润新知