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[]->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)

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;

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[];

DBGridEh1.DataGrouping.GroupLevels.Add.Column:=DBGridEh1.Columns[];

//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:= to MemTableEh1.Fields.Count- do

  begin

    if MemTableEh1.Fields[i].DataType=ftFloat then

       DBGridEh1.Columns[i].DisplayFormat:='#,###,###.00';

  end;

end;

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 ;

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

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

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

GridEh Lookup的更多相关文章

  1. SQL Server-聚焦移除Bookmark Lookup、RID Lookup、Key Lookup提高SQL查询性能(六)

    前言 前面几节都是讲的基础内容,本节我们讲讲索引性能优化,当对大数据进行处理时首先想到的就是索引,一旦遇到这样的问题则手忙脚乱,各种查资料,为何平常不扎实基本功呢,我们由浅入深,简短的内容,深入的理解 ...

  2. Salesforce的sharing Rule 不支持Lookup型字段解决方案

    Salesforce 中 sharing rule 并不支持Look up 字段 和 formula 字段.但在实际项目中,有时会需要在sharing rule中直接取Look up型字段的值,解决方 ...

  3. eclipse调试(debug)的时候,出现Source not found,Edit Source Lookup Path,一闪而过

    问题描述 使用Eclipse调试代码的时候,打了断点,经常出现Source not found,网上找了半天,大部分提示点击Edit Source Lookup Path,添加被调试的工程,然而往往没 ...

  4. mongodb 3.x 之实用新功能窥看[2] ——使用$lookup做多表关联处理

    这篇我们来看mongodb另一个非常有意思的东西,那就是$lookup,我们知道mongodb是一个文档型的数据库,而且它也是最像关系型数据库的 一种nosql,但是呢,既然mongodb是无模式的, ...

  5. Lookup component 用法

    Lookup component 类似于Tsql的join子句, select a.* ,b.* from dbo.tis a left join dbo. tdes b on a.code=b.co ...

  6. [SharePoint]javascript client object model 获取lookup 类型的field的值,包括user类型(单人或者多人)的值。how to get the multiple user type/lookup type field value by Javascript client object model

    1. how to get value var context = new SP.ClientContext.get_current(); var web = context.get_web(); v ...

  7. [SharePoint 2010] Modify lookup mapping with PowerShell

    SharePoint支持将列表保存成列表模板,但当列表包含Lookup字段时,通过模板创建的列表会丢失Lookup字段的信息. 通过PowerShell,可以修改Lookup字段的xml内容. Fun ...

  8. Informatica Lookup Transformation组件的Connect 与Unconnected类型用法

    Informatica Lookup Transformation组件的Connect 与Unconnected类型用法及区别:下面是通一个Lookup在不同Mapping中的使用: 1. Conne ...

  9. AX 2012 两种lookup 的显示方式

    第一种:只能单选的lookup: 代码: public void BusinessUnitLookup(FormStringControl _formstrcontroll) { //OMOperat ...

随机推荐

  1. bzoj2330: [SCOI2011]糖果 差分约束系统

    幼儿园里有N个小朋友,lxhgww老师现在想要给这些小朋友们分配糖果,要求每个小朋友都要分到糖果.但是小朋友们也有嫉妒心,总是会提出一些要求,比如小明不希望小红分到的糖果比他的多,于是在分配糖果的时候 ...

  2. 002PHP文件处理——文件处理 is_dir mkdir getcwd chdir rmdir

    <?php /** * 66 文件处理 is_dir mkdir getcwd chdir rmdir */ //is_dir() 判断一个目录是否存在 //var_dump(is_dir('6 ...

  3. HTML5里的placeholder属性

    <!doctype html> <html> <head> <meta charset="utf-8"> <title> ...

  4. java的初始化(编程思想)

    6.成员初始化 java尽量保证:所有变量在使用前都能得到恰当的初始化.对于方法的局部变量,java以编译错误的形式来贯彻这种保证. 如果类的成员变量时基本类型,那么没有初始化给默认值 在类里定义一个 ...

  5. (转) 一致性Hash算法在Memcached中的应用

    前言 大家应该都知道Memcached要想实现分布式只能在客户端来完成,目前比较流行的是通过一致性hash算法来实现.常规的方法是将 server的hash值与server的总台数进行求余,即hash ...

  6. js base64 转成图片上传

    直接上代码,要点就是把base64转成Blob,添加到FormData传递给后台程序,跟选择图片文件上传时一样的了. var dataurl = canvas.toDataURL('image/png ...

  7. LSTM长短期记忆网络

    Long Short Term Memory networks : http://colah.github.io/posts/2015-08-Understanding-LSTMs/

  8. pe如何安装ios系统

    1.进PE系统(老毛桃) 2.虚拟光驱加载ios系统 3.然后打开我的电脑,里面有个光盘,就像光盘插在光驱里打开电脑后的样子,双击安装系统.

  9. ssh的时候提示No user exists for uid 501

    原来是oh my zash升级导致的.关闭iterm2然后重新打开iterm2就可以了

  10. 设计模式(Python)-策略模式

    本系列文章是希望将软件项目中最常见的设计模式用通俗易懂的语言来讲解清楚,并通过Python来实现,每个设计模式都是围绕如下三个问题: 为什么?即为什么要使用这个设计模式,在使用这个模式之前存在什么样的 ...