当前位置:编程学习 > Delphi >>

各位大虾帮忙看看 一个关于delphi的简单问题

我定义了一个方法 procedure TForm1.showDBGrideEh(); begin DBGridEh1.UseMultiTitle:=true; DBGridEh1.TitleLines:=3; DBGridEh1.Columns[0].Title.Caption := '编号; DBGridEh1.Columns[1].Title.Caption := '名称; DBGridEh1.Columns[2].Title.Caption := '备注; end; 然后在FormShow中直接调用它,为什么报错?? Project Project1.exe raised exception class EListError with message ' List index out of bounds(1)'.Process stopped.Use Step or Run to continue
追问:谢了,这个错误已经解决了。我现在想问的是 如果我想操作第二行数据,应该怎么办?换句换来表达,如果DBGridEh中有好多条数据,我现在想要获得其中某个坐标的数据,并把它复制给一个变量,要怎么实现?那要进行新增、修改操作该怎么办呢?DBGridEh中显示的是多个表的数据假如我DBGridEh中显示的是表A的全部数据和表B的部分数据,我现在要对A表进行增、改操作,表B有非空约束,而且DBGridEh中显示的数据中不包含B表的约束,那该怎么办?按你上面的方式,它报错,提示不能为空哦,这个问题我已经找到解决的方法了,我新建了个数据集来用作要更新数据的数据表的录入,并把数据集的locktype属性设置为批量录入方式,在数据集执行excesql操作之前将数据一个个的赋值给数据集的方式实现数据的更新。现在最主要的问题是解决操作表与另一个关联表之间的关系问题,因为担心操作表在更新后因为与另一个表的关联问题出现查找不到数据的情况,所以现在想给DBGridEh建个下拉表,通过下拉表解决数据关联不到的问题。
答案:如果DBGridEh1只有一列,侧按以下修改代码:
   DBGridEh1.UseMultiTitle:=true;
   DBGridEh1.TitleLines:=3;
   DBGridEh1.Columns[0].Title.Caption := '编号;
   DBGridEh1.Columns.Add; 
   DBGridEh1.Columns[1].Title.Caption := '名称;
   DBGridEh1.Columns.Add; 
   DBGridEh1.Columns[2].Title.Caption := '备注;
其他:首先你看看Columns[2]存在吗?不存在的话,就要创建! 越界了,朋友; 

上一个:delphi 7 rave reports 不能中文字段,要在哪里改呢?
下一个:有个delphi编写的外挂,打开上面有本机机器码,然后输入卡号密码充值的哪种,请问兄弟有办法破解么

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,