dev控件学习笔记之----CxGrid
本人总结的DEV学习:希望对大家有所帮助。
一、是否显示分组工具:

二、表格左边记录信息显示的宽度:

三、设置表格行高:

四、表头文件的水平和垂直设置:多个设置用按住SHIFT后进行多选,然后就可以设置了。

五、表头加图片设置:

六、表头样式:可以对整个列进行配置,也可以对单个列进行配置。如果点击某列标题,则styles 是对该列进行配置,如果选择的是表格,则是对整个表格列的样式进行配置。

七、列的设置:即可以对表格所有列设置,也可以对某一列进行设置。
1、列可否过滤 2、列可否分组 3、列可否隐藏 4、列可否隐藏分组
5、列可否移动 6、列可否排序

八、数据是否允许【增、删、改】,也可以仅对某个列进行修改。

九、自应用列宽
for i := 0 to adoquery.FieldCount - 1 do
begin
//自适应列宽
cxGrid1DBTableView1.Columns[i].ApplyBestFit();
end;
十、在网格最后一行的最后一格回车自动增加一条记录,并跳到新记录的第一格
设置cxGrid1DBTableView1的
OptionsBehavior.FocusFirsCellOnNewRecord:=true;
OptionsBehavior.GoToNextCellOnEnter:=True;
OptionsBehavior.FocusCellOnCycle:=True;
十一、.网格中通过Tab跳转,设置
cxGrid1DBTableView1.OptionsBehavior.FocusCellOnTab:=True;
十二、表格增、删、改、插入属性
//列是否允许新增 不允许
cxGrid1DBTableView1.OptionsData.Appending:=false;
//列是否允许删除 不允许
cxGrid1DBTableView1.OptionsData.Deleting:=false;
//列是否允许插入 不允许
cxGrid1DBTableView1.OptionsData.Inserting:=false;
//列是否允许修改 不允许
cxGrid1DBTableView1.OptionsData.Editing:=false;
十三、隔行颜色:
在TcxGridDBTableView下的styles下的
Content 下的color 代表默认的内容
contenteven下的color 代表偶数行
contentodd 下的color 代表奇数行
Selection 下的color 代表选中行

十四、表格最前列加序号
1.设置cxgrid的属性, OptionsView.Indicator = True
2.OnCustomDrawIndicatorCell事件
var
FValue: string;
FBounds: TRect;
begin
if (AViewInfo is TcxGridIndicatorRowItemViewInfo) then
begin
FValue :=IntToStr(TcxGridIndicatorRowItemViewInfo(AViewInfo).GridRecord.Index+1);
FBounds := AViewInfo.Bounds;
ACanvas.FillRect(FBounds);
ACanvas.DrawComplexFrame(FBounds, clBtnHighlight, clBtnShadow, [bBottom, bLeft, bRight], 1);
InflateRect(FBounds, -1, -1);
ACanvas.Font.Color := clBlack;
ACanvas.Brush.Style := bsClear;
ACanvas.DrawText(FValue, FBounds, cxAlignCenter or cxAlignTop);
ADone := True;
end;
end;
以前代码加放后,存在一个部题,就是那个序号列,比较窄,没有办法加宽。控件设置了不起作用。
十五、点击表格的指示器程序

procedure TForm1.cxGrid1DBTableView1MouseDown(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
var
hitTest:TcxCustomGridHitTest;
begin
hitTest:=(sender as TcxGridSite).GridView.ViewInfo.GetHitTest(x,y);
if hitTest.HitTestCode= htCell then
ShowMessage('点击了表格');
if hitTest.HitTestCode = htIndicatorHeader then
ShowMessage('点击了表格最左上角的单元格指示器');
if hitTest.HitTestCode = htRowIndicator then
ShowMessage('点击了行的指标器');
if hitTest.HitTestCode = htIndicator then
ShowMessage('点击了最左下角的单元指示器');
end;
十六、增加气泡提示:在电脑的最右下角提示信息
实例:接上面的实例进行测试。

制做方法:
1、窗体上增加控件:

2、写代码实现:一行代码即可实现 。
dxAlertWindowManager1.Show('提示','点击了表格');
十七、添加所有数据源中的列到CXgrid表格中
cxGrid1DBTableView1.DataController.CreateAllItems();
dev控件学习笔记之----CxGrid的更多相关文章
- dev控件学习笔记之----CxGrid2
一.cxgrid 表格自适应列宽和增加注脚注和 for i := 0 to ado_lxr_cx.FieldCount - 1 do begin //如果是数字,则注脚求合 ...
- 转)delphi chrome cef3 控件学习笔记 (二)
(转)delphi chrome cef3 控件学习笔记 (二) https://blog.csdn.net/risesoft2012/article/details/51260832 原创 2016 ...
- Corelocation及地图控件学习笔记
Corelocation基本使用 在地图章节的学习中,首先要学的便是用户位置定位,因此我们首先要掌握Corelocation的使用.(在IOS8以前可以系统会直接请求授权,现在需要我们自己调用方式通知 ...
- Winform控件学习笔记【第二天】——常用控件
背景:期末考试刚过就感冒了,嗓子火辣辣的,好难受.但是一想起要学习总结就打起精神来了,Winform控件网上也没有多少使用教程,大部分都是自己在网上零零散散的学的,大部分用的熟了,不总结会很容易忘得. ...
- WinForm控件学习笔记【第一天】——Control类
感悟:明天就又是学校双选会的日子了.两年我都参与了学校的双选会的服务工作,现在该是双选会服务的我时候了.怎么样找到一份好的工作,或者说怎么样学习才能符合企业对人才的要求,我现在也是很迷茫.平时都是在看 ...
- web前端开发控件学习笔记之jqgrid+ztree+echarts
版权声明:本文为博主原创文章,转载请注明出处. 作为web前端初学者,今天要记录的是三个控件的使用心得,分别是表格控件jqgrid,树形控件ztree,图表控件echarts.下边分别进行描述. ...
- DataGridView控件-学习笔记总结
1.GridColor属性用来获取或设置网格线的颜色 dataGridView1.GridColor=Color.Blue; 2.设置宽度 .高度 dataGridView1.Columns[].Wi ...
- C# WinForm调用UnityWebPlayer Control控件 <学习笔记1>
工具 1.三维场景 Unity 5.0.2f1 2.开发环境Microsoft Visual Studio 2010 3.需要使用的控件 UnityWebPlayer Control 出现的问题及解决 ...
- Winform控件学习笔记【第六天】——TreeView
TreeView控件用来显示信息的分级视图,如同Windows里的资源管理器的目录.TreeView控件中的各项信息都有一个与之相关的Node对象.TreeView显示Node对象的分层目录结构,每个 ...
随机推荐
- 记录二:tensorflow2.0写MNIST手写体
最近学习神经网络,tensorflow,看了好多视频,查找了好多资料,感觉东西都没有融入自己的思维中.今天用tensorflow2.0写了一个MNIST手写体的版本,记录下学习的过程. 复现手写体识别 ...
- 一、微服务(Microservices)【翻译】
1.微服务 “微服务架构(Microservice Architecture)”一词在过去几年里广泛的传播,它用于描述一种设计应用程序的特别方式,作为一套独立可部署的服务.目前,这种架构方式还没有准确 ...
- php多线程的概念
来源:http://www.cnblogs.com/zhenbianshu/p/7978835.html 多线程 线程 首先说下线程: 线程(thread) 是操作系统能够进行运算调度的最小单位.它被 ...
- bash脚本获取绝对路径的最后一个目录名称
比如绝对路径是/root/autoHls/streamID 因为脚本里面想直接用这个streamID来推流 下面是方法 #!/bin/bash dir="/root/autoHls" ...
- 如何在uboot下列出使用的设备树信息?
答: 使用fdt命令 1. fdt addr <fdt addr> (将设备树加载到fdt addr指定的位置,如tftpboot 0x80000000 my.dtb,那么fdt add ...
- Mysql 逗号分隔行列转换总结
方法一 存储过程实现: -- 修改结束符,防止在mysql命令行中默认分号直接运行 delimiter $$ -- 创建一个计算拆分后字符串的个数函数 drop function if exists ...
- Django运行项目时候出现DisallowedHost at / Invalid HTTP_HOST header:
web端错误现象: DisallowedHost at / Invalid HTTP_HOST header: 'ip:8000'. You may need to add u'ip' to ALLO ...
- 小D课堂-SpringBoot 2.x微信支付在线教育网站项目实战_2-3.热部署在Eclipse和IDE里面的使用
笔记 3.热部署在Eclipse和IDE里面的使用 简介:讲解热部署的好处及使用注意事项,在eclipse里面默认开启,在IDE里面默认关闭 1.增加依赖 & ...
- 系统调用与内存管理(sbrk、brk、mmap、munmap)(转)
一.系统调用(System Call):在Linux中,4G内存可分为两部分——内核空间1G(3~4G)与用户空间3G(0~3G),我们通常写的C代码都是在对用户空间即0~3G的内存进行操作.而且,用 ...
- Java日志体系(八)最佳实践
java常用日志框架关系 Log4j 2与Log4j 1发生了很大的变化,Log4j 2不兼容Log4j 1. Logback必须配合Slf4j使用.由于Logback和Slf4j是同一个作者,其兼容 ...