Delphi AdvStringGrid表格保存和TClientDataSet发生关系的构想。

 
在实际运用中,用到了TMS的TAdvSpreadGrid表格,这个表格和CDS没有关系。造成了在一些操作上的被动性(比如:移动,隐藏,增加字段)

我个人想对于程序,我进行如下处理:

1)把定义一个类,存储字段的信息,如下:

   TDefDbField = class

         FieldCode: string;

         FieldName: string;

        .....其他的一些控制信息,(是否显示等)

   end

2)定一个TStringList,在其中把所定义的字段类,全部存储到这个TStringlist列表中。

3)循环StringList,通过表格的CellName属性,在Titile中如 Grid1.CellName[col, row] := FieldName;  这样做的目的是存储字段的Code;

4)然后把查询出来的数据填充到对应的表格中,这样,填充两份 例如 Grid1.Cells[col, row] := '内容';  Grid1.CellName[col, row] := '内容',

    如果表格是正常状态这么填充,如果不是的话,看是哪种类型:

       (1)复选框:Grid1.SetCheckState(col, row, true),   Grid1.CellName[col, row] := '内容' .

       (2)下来列表:Grid1.Combobox....  Grid1.CellName[col, row] := '内容' .

        类似就是这种情况吧。

5)在进行别的操作保存前,先进行把表格的数据进行更新到CellName,这样在保存的时候关注这个表格的CellName单元就行了。

    这样我认为就可以实现一般所说的功能了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值