ehlib 用法记录
点列头排序
1.add ehlibado.pas to project.
2.grideh>ColumnDefValues>Title>TitleButton=true;
3.grideh>SortLocal=true;
4.grideh>optionsEh>dghAutoSortMarking=true;
install component
open ehlib.dpk,replace ,then install ok!
in ' replace to in '..\Common\
grideh隔行变色:EvenRowColor/OddRowColor
grid的title:渐变色,TitleParams.FillStyle=cfstGradientEh
动态创建Grid列
var
column : TColumnEh;
begin
self.DBGridEh1.Columns.AddAllColumns( true );
column := self.DBGridEh1.Columns.Add;
column.Title.Caption := '姓名';
column.Width := ;
column.FieldName := 'name';
TColumnEh * column;
column = DBGridEh1->Columns->Add( );
column->FieldName = "name";
column->Title->Caption = "姓名";
column->Width = ;
这个父容器释放的时候会自动释放,所以不存在内存泄漏。
尾行合计
方法:双击grideh打开字段列表;选择需要求和的字段,有个属性Footer
https://blog.csdn.net/yanjinrong/article/details/43816369
GridEH编辑框当前单元格的值,正在编辑的值,正在输入的值,当前输入的值
self.DBGridEh1.InplaceEditor.Text
if Grid.InplaceEditorVisible then
Result := Grid.InplaceEditor.Text
Result := Grid.InplaceEditor.top
让进入编辑模式
DBGridEh1.EditorMode:=True;
InplaceEditor本质上是MaskEdit
TInplaceEdit = class(TCustomMaskEdit)
procedure TCustomDBGridEh.ShowEditor;
procedure TCustomDBGridEh.UpdateEdit; //计算位置
function TCustomDBGridEh.CellEditRect(ACol, ARow: Longint): TRect;
DBGridEh.pas
function TCustomDBGridEh.CellEditRect(ACol, ARow: Longint): TRect;
// abscrect.top :=abscrect.top+ 20;
Result.top:= abscrect.top;
grideh编辑框垂直居中
procedure TForm12.DBGridEh1DrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumnEh; State: TGridDrawState);
var
acol,arow:Integer;
arect:TRect;
begin
if self.DBGridEh1.TitleHeight< then Caption:=''; if (self.DBGridEh1.InplaceEditor<>nil) and(self.DBGridEh1.InplaceEditor.Visible) then //and (self.DBGridEh1.InplaceEditor.Top<=(25+ (self.FDMemTable1.RecNo-1)*(self.DBGridEh1.RowHeight+1) ) then
begin arect:= self.DBGridEh2.CellRectAbs(DataCol,DBGridEh1.Row,true);
self.Caption := Format('%d,%d,%d,%d',[DBGridEh1.Row, arect.Top,DBGridEh1.InplaceEditor.Top,DBGridEh1.InplaceEditor.Height]);
DBGridEh1.InplaceEditor.Alignment := taCenter;
if( DBGridEh1.InplaceEditor.Top <= + *(DBGridEh1.Row-) ) then
self.DBGridEh1.InplaceEditor.Top := self.DBGridEh1.InplaceEditor.Top+ ;
end; // self.Caption:='cc';
end;
ehlib 用法记录的更多相关文章
- pt-kill 用法记录
pt-kill 用法记录 # 参考资料Percona-Toolkit系列之pt-kill杀会话利器http://www.fordba.com/percona-toolkit-pt-kill.html ...
- CURL 用法记录
CURL 用法记录 在工作中经常需要用到curl 命令,记录一下常用的场景 Send a POST Request with JSON Data curl -d '{"login" ...
- python 一些函数和类用法记录
这一篇主要用来记录在学习过程中遇到的一些觉得有意思的函数或者类的用法,有一些用法感觉很炫酷. 1.collections.defaultdict from collections import def ...
- jqueryui / accordion的用法记录
jqueryui 的 widget 中包含了基本上我们都需要的ui组件, 除了那个unslider. 参考地址是: www.jqueryui.com. 要能够看懂/并使用/ 完全掌握的话, 就要使用其 ...
- asp.net 第三方UI控件 Telerik KendoUI 之 TreeVIew 的用法记录
一.前台显示 备注:一次性取出所有节点 function loadTreeData() { $.ajax({ type: 'POST', url: '@(Html.UrlHref("Scri ...
- jquery图片延迟加载 及 serializeArray、serialize用法记录
1.使用jquery实现 图片延迟加载 由于用户访问页面需要加载很多的图片,延迟加载技术在电子商务网站领域越来越普及,淘宝商城,京东商城,凡客等访问量巨大的电子商务站点为了增加用户用户体验,访问速度以 ...
- 【java】java基本用法记录
java用法总结 计时 long startTime = System.nanoTime(); solution.process(inputFile); long endTime = System.n ...
- CountDownLatch/CyclicBarrie用法记录
在jdk1.5中,java提供了很多工具类帮助我们进行并发编程,其中就有CountDownLatch和CyclicBarrie 1.CountDownLatch的用法 CountDownLatch 位 ...
- sed 用法记录
sed是一个很好的文件处理工具,本身是一个管道命令,主要是以行为单位进行处理,可以将数据行进行替换.删除.新增.选取等特定工作,下面先了解一下sed的用法sed命令行格式为: sed ...
随机推荐
- nyoj1273 河南省第九届省赛_"宣传墙"、状压DP+矩阵幂加速
宣传墙 时间限制:1000 ms | 内存限制:65535 KB 难度:4 描述 ALPHA 小镇风景美丽,道路整齐,干净,到此旅游的游客特别多.CBA 镇长准备在一条道路南 面 4*N 的墙上做 ...
- HDU 4540 线性DP
威威猫系列故事——打地鼠 Time Limit: 300/100 MS (Java/Others) Memory Limit: 65535/32768 K (Java/Others)Total ...
- Linux vi编辑器的使用
vi是Visual Interface的简称,它是Linux/Unix下的文本编辑器,例如你想编辑文件english.txt,则你可以在终端下输入 vi english.txt命令,然后就进入了编辑界 ...
- Nginx实践03-配置虚拟主机的3种方式
基于IP.端口号.名称3种方式 1.基于IP的虚拟主机配置(使用最少) 基于ip的虚拟主机配置,需要配置单个网卡上多个ip地址,这种方式管理比较麻烦,所以用的很少. 1.1 设置单个网卡多个IP 查看 ...
- Nginx实践01-ngnix编译安装-测试
1.下载nginx安装包 下载地址:http://nginx.org/en/download.html(里面有nginx各个版本) 解压到指定目录: 解压出来的目录简单介绍: src:软件的所有源代码 ...
- L185 Ocean Shock
This is part of "Ocean Shock," a Reuters series exploring climate change's impact on sea c ...
- 自动化测试--响应请求测试(.net)
Web运行原理简单地说是“浏览器发送一个HTTP Request到Web服务器上,Web服务器处理完后将结果(HTTP Response)返回给浏览器”. 通常测试一个web api是否正确,可以通过 ...
- scanf()与gets()的区别
scanf()与gets()的区别 1.scanf()可以同时接受多个字符串,而gets()一次只能接受一个字符串. #include<stdio.h>int main(){ char s ...
- mongodb启用Profiling定位问题
建议使用方法三,最简单且容易查看 一:如果mongodb已经运行了很长时间,此时查看mongod.log很大,没法打开查看相应信息 #ps -ef|grep mongod 找到相应的mongod的进程 ...
- hasura graphql subscriptions 使用
subscriptions graphql 的一项实时数据推送的功能,还是很方便的,自己在直接使用subscriptions-transport-ws npm 包 的时候运行一直有错误(主要是依赖 ...