TcxGrid
一、列的宽度为64时,其宽度会自动根据字段的长度调整,设置其他值即为固定值;
二、cell中显示按钮:选中某列,在properties中更改为ButtonEdit,点击子属性buttons添加button项,更改options里面的属性showeditbuttons为isebAlways,同事Options里的editing属性为true点击才起作用。
三、去掉cxgrid中抬头的分组box ,在tableview1的ptionsview的groupbybox=false
四、处理cxgrid的button根据当前行的某个字段的值而显示不同的形态:
1、在button列的GetProperties事件中处理如下:
procedure Tfrm_BarCode_makecl3.gdtv_1select_TicketGetProperties(
Sender: TcxCustomGridTableItem; ARecord: TcxCustomGridRecord;
var AProperties: TcxCustomEditProperties);
begin
if ARecord.Values[gdtv_.GetColumnByFieldName('isidcardfill').Index] = '' then
begin
AProperties := cxEditRepository1ButtonItem1.Properties;
end
else
begin
AProperties := cxEditRepository1ButtonItem2.Properties;
end;
end;
其中, cxEditRepository1ButtonItem1和cxEditRepository1ButtonItem2是控件kongcxEditRepository添加两个ButtonEdit后的Item,并且这两个Item都设置自身的Buttons。控件kongcxEditRepository双击即可进行编辑。在上述代码中,会根据条件语句对每行的button重新复制为cxEditRepository1ButtonItem1和cxEditRepository1ButtonItem2中设置的button。
五、非绑定数据增加行:
acount:=cxgrd1TableView1.DataController.RecordCount;
cxgrd1TableView1.DataController.AppendRecord;
cxgrd1TableView1.DataController.Values[acount, ] :=IntToStr(i*);
cxgrd1TableView1.DataController.Post();
六、删除某行(非绑定数据增加):
cxGridTableView1.DataController.DeleteRecord(cxGridTableView1.DataController.FocusedRecordIndex);
七、删除所有行(非绑定数据增加【append】):
cxGridTableView1.DataController.RecordCount := 0;
八、定位到某行(非绑定数据增加【append】):
cxGridTableView1.DataController.FocusedRecordIndex := 3;//定位到第三行
九、加序号
在Cxgrid中有OnGetDisplayText()事件,这个时间可以完成在Cxgrid表格中加一列序号,这列序号不会根据排序改变而改变
procedure TForm1.cxGrid1DBTableView1Column1GetDisplayText(
Sender: TcxCustomGridTableItem; ARecord: TcxCustomGridRecord;
var AText: string);
begin
atext:=inttostr(arecord.Index);
end;
在Cxgrid中有OnGetDataText()事件,这个时间可以完成在Cxgrid表格中加一列序号,这列序号会根据排序改变而改变。
procedure TForm1.cxGrid1DBTableView1Column1GetDataText(
Sender: TcxCustomGridTableItem; ARecordIndex: Integer; var AText: string);
begin
atext:=inttostr(arecord.Index);
end;
显示统计行:1、tableview的optionview的footer打勾;2、某列的summary的footerkind为true。
TcxGrid的更多相关文章
- TcxGrid导出EXCEL
function ExportExcel(grid: TcxGrid; const fileName: string = '1.xls'): Boolean;var sd: TSaveDialog; ...
- TCxGrid 把列移上移下。
T
- TcxGrid 调整列位置的事件
- TcxGrid 选中 整行
- TcxGrid Sqlite text类型 显示memo
- TcxGrid 复选框
- TcxGrid 内容 行高度
- TcxGrid 标题头高度
- TcxGrid标题头 字体加粗
- TcxGrid 去除<No data to display>
随机推荐
- 高效code review指南
大多数程序员都知道并且相信code review(代码审查)的重要性,但并一定都能很好的执行这一过程,做好code review也需要遵循一定的原则.流程和规范. 我们团队的code review实践 ...
- 听说用 Lombok 可以早点下班?
听说隔壁用 Lombok 的六点就下班了,我也想六点下班! 好的,那么这篇文章就介绍下什么是 Lombok,Lombok 做了什么以及 Lombok 是怎么做的? 在介绍之前,先通过是否使用 Lomb ...
- 关于STM32F103系列从大容量向中容量移植的若干问题
一.把STM32F103大容量移植到STM32F103C8T6上的步骤: 1.换启动文件 startup_stm32f10x_cl.s ——互联型的器件 包括:STM32F105x ...
- Git 处理换行符的配置方法
core.autocrlf If you're programming on Windows and working with people who are not (or vice-versa), ...
- coding++:TransactionDefinition 接口介绍
TransactionDefinition类结构: 作用: 1.TransactionDefinition接口被用于Spring事物支持的核心PlatformTransactionManager接口, ...
- 基于zookeeper实现分布式锁和基于redis实现分布所的区别
1,实现方式不同 zookeeper实现分布式锁:通过创建一个临时节点,创建的成功节点的服务则抢占到分布式锁,可做业务逻辑.当业务逻辑完成,连接中断,节点消失,继续下一轮的锁的抢占. redis实现分 ...
- BZOJ 4472 salesman 题解
题目 某售货员小T要到若干城镇去推销商品,由于该地区是交通不便的山区,任意两个城镇之间都只有唯一的可能经过其它城镇的路线.小T可以准确地估计出在每个城镇停留的净收益.这些净收益可能是负数,即推销商品的 ...
- unix中数据缓冲区高速缓冲的设计
目录 1. 概述 2. 缓冲区的设计 2.1 缓冲区头部 2.2 缓冲区的结构 2.3 缓冲区的检索算法 2.3. 申请一个缓冲区算法 getblk 2.3.2 释放一个缓冲区算法 brelse 2. ...
- Codeforces 1332F - Independent Set(树dp)
题目链接 题意 给出一棵 n 个点的树, 求它的所有非空诱导子图的独立集种类数之和, 对 998244353 取模. n ≤ 3e5. 题解 不妨假设在独立集中的点被染色成 1, 其余不染色; 由于不 ...
- JUnit白盒测试之基本路径测试:三次找到假球
前言 记录一次软件测试课程的课后作业,作业内容是白盒测试中的基本路径测试,步骤如下 分析程序的控制流 计算环形复杂度 找出基本路径 设计测试用例 执行测试用例(要求使用JUnit) 作业要求 使用白盒 ...