在ehlib的DBGridEh控件中使用过滤功能(可以不用 MemTableEh 控件 适用ehlib 5.2 ehlib 5.3)...
EHlib 因为小巧而受到很多的delphier 们的欢迎,不过ehlib 5.2 及ehlib 5.3 版本为了实现office 2007过滤风格,突然把直接支持CDS的过滤功能停了,取而代之的是必须使用 MemTableEh 控件做中转,这过程麻烦不说,一些朋友使用下来,发现慢无可忍,从而纷纷选择其它的控件替代,不过三方控件也不是想换就能换的,而且对新的控件,如果不熟悉,你不一定能最优使用他,于是就开始寻找是否还有希望使用单选的功能的dbgrideh 来
经过多方代码碴找
对 DbUtilsEh.pas 做以下修改,终于与以前一样使用,而且类office 2007的选择功能也出来了!
procedure TDatasetFeaturesEh.FillSTFilterListDataValues(AGrid: TCustomDBGridEh; Column: TColumnEh; Items: TStrings);
begin
end;
很是奇怪,这个地方为什么会留空呢,是否是因为用基它控件时,存在BUG? 不得而之....
我们做如下修改:
procedure TDatasetFeaturesEh.FillSTFilterListDataValues(AGrid: TCustomDBGridEh; Column: TColumnEh; Items: TStrings);
begin
if Assigned(AGrid.Center) then
AGrid.Center.StandardFillSTFilterListDataValues(AGrid, Column, Items);
end;
现在再用以前版本的方法,发现,实现的功能与用了MemTableEh 的没有什么区别,也期待能没有其它的BUG.....
比如过滤的条数 不能太多,设置的条件不能多个等.....
附dbgrideh 中过滤设置的一些重要操作:
在ehlib的DBGridEh控件中使用过滤功能很方便,但使用过程中有几个容易被忽略的地方,它曾经困绕了我很长时间,过滤功能就是用不起来。
1.在UNIT中加入
uses EhLibXXX(EhLibADO、EhLibDBE等,根据你选用的数据集来定);
initializationDBGridEhDefaultStyle.FilterEditCloseUpApplyFilter := True;
//这句写在 .end 前面,同时上面这一句在不同的时候,可能有区别,你在编译不通过时,就要做修改!
.END
有如下的版本:
EhLibCDS
DBGridEhCenter.FilterEditCloseUpApplyFilter := True;
2.设置属性
DBGridEh.STFilter.Local := True;
DBGridEh.STFilter.Visible:= True;
3.设置需过滤字段的 STFilter 属性,这个地方我就不详细说了,相信大家都会了。
2012.11.21补充:应该是5.6版本开始(我试用的是6.0)版本,不再需要修改源码了,另外,6.0也不需要
initialization
DBGridEhDefaultStyle.FilterEditCloseUpApplyFilter := True;
这一行了,实在是方便了很多!
转载于:https://www.cnblogs.com/zhqian/archive/2011/05/14/2046101.html
在ehlib的DBGridEh控件中使用过滤功能(可以不用 MemTableEh 控件 适用ehlib 5.2 ehlib 5.3)...相关推荐
- ehlib的DBGridEh控件中使用过滤功能的方法
关于在ehlib的DBGridEh控件中使用过滤功能的方法 在ehlib的DBGridEh控件中使用过滤功能很方便,但使用过程中有几个容易被忽略的地方,它曾经困绕了我很长时间,过滤功能就是用不起来. ...
- ToolStrip控件中如何添加功能按钮
1,在工具箱中选择ToolStrip控件 2,在属性框,选择item 3,进入该界面,选择添加类型 4,指定选定控件的类型 name:控件的名字,相当于对象名. text:指定控件中内容限制字段 im ...
- asp.net 获得GridView控件中BoundField的值,获取BoundField控件值
foreach (GridViewRow row in this.gvwQXLB.Rows){ if (((CheckBox)(row.FindControl("ckbYHQX") ...
- flex中datagrid中的过滤功能
代码来自http://try.flex.org/index.cfm <?xml version="1.0" encoding="utf-8"?> & ...
- [翻译]Scott Mitchell 的ASP.NET 2.0数据教程之十三:在DetailsView控件中使用TemplateField...
导言 比起BoundField.CheckBoxField.HyperLinkField以及其他的那些数据字段控件(data field controls)来说,TemplateField提供了一种高 ...
- 用户控件中使用相对路径问题
在用户控件中使用相对路径,会因为引用控件的页面的不同路径而产生问题.在用户控件里最好使用以站点根目录开始指定相对路径,比如你的asp.net应用程序名为:myapp,你的图片是 myapp/myima ...
- [翻译]Scott Mitchell 的ASP.NET 2.0数据教程之十二:在GridView控件中使用TemplateField
在ASP.NET 2.0中操作数据:在GridView控件中使用TemplateField 英文原版 | 本教程的代码(C#) | 翻译目录 | 原文目录 导言 GridView ...
- android 的a标签,Android开发技巧之在a标签或TextView控件中单击链接弹出Activity(自定义动作)...
在5.2.1节和5.2.2节介绍了标签以及TextView自动识别的特殊文本(网址.电话号.Email等),这些都可以通过单击来触发不同的动作.虽然这些单击动作已经可以满足大多数需要了,但如果读者想在 ...
- delphi RichEdit控件中插入GIF动画表情
delphi在RichEdit控件中插入GIF动画表情 在UDP即时通讯软件中实现类似于QQ的动画表情,在richEdit控件中插入gif动画表情. 发送的时候将表情转为命令,接收之后,再将命令转换为 ...
- C++ 主程序中打开子程序窗口隐藏,操作控件 遍历窗口控件句柄EnumChildWindows();获取其他程序进度条数据 操作选择框 按钮点击
1.线程启动子程序 ShowWindow(hWnd, SW_SHOW)显示 ShowWindow(hwnd, SW_HIDE);隐藏 system_hide(L"Odin3.exe&quo ...
最新文章
- 【js操作url参数】获取指定url参数值、取指定url参数并转为json对象
- 关于java中的字符流的一个使用例子
- uni-app手机横屏后界面错乱解决办法
- 将数据到处到Excel
- 微软正式开源WSL 2的内核源码
- linux备份文件到ftp上,Linux服务器下用FTP上传下载备份文件
- neon浮点运算_ARM 浮点运算详解
- window安全模式的用途
- 调试器工作原理--CPU软件断点/硬件断点/单步执行标识
- VMware Workstation 端口映射 How to
- shell下的九大脚本实例
- 波卡生态DeFi项目Stone将于3月31日在DODO平台创建DVM流动性池并开启交易
- c语言windows程序设计pdf下载,windows程序设计第7版(windows程序设计第7版珍藏版) pdf...
- 搜索引擎SEO 入门学习摘要笔记
- 学长教你学C-day9-C语言循环结构与选择结构
- 2017小象学院Python数据分析与挖掘
- 【TS】泛型 Generics
- h5公众号分享朋友、朋友圈
- 数学之美-读书笔记11-15章
- 微信生态的优劣,将决定微信电商的未来
热门文章
- java sleep唤醒_[JavaEE]如何唤醒Sleep中的线程
- 阶段5 3.微服务项目【学成在线】_day05 消息中间件RabbitMQ_1.页面发布-需求分析...
- Qt + OpenSenceGraph(osg) 加载OSG模型
- 贪心【CF1029E】Tree with Small Distances
- javaweb文件压缩下载
- 关于吐槽网播放映兔源视频无法播放的问题 及解决方案
- JParticles 2.0 发布,打造炫酷的粒子特效
- WPF基础到企业应用系列7——深入剖析依赖属性(WPF/Silverlight核心)
- BZOJ 2734: [HNOI2012]集合选数( 状压dp )
- Oracle实例解析:编码与字符集