DBGrid out of index(50分)

  • 主题发起人 主题发起人 lizheng
  • 开始时间 开始时间
L

lizheng

Unregistered / Unconfirmed
GUEST, unregistred user!
小弟刚学数据库,编了一个程序,用到了三个Table元件,和一个DBGrid元件,

但运行时出现如下错误:

第一次启动程序时,Table是一个空表,向里面增加记录没有问题,

但第二次启动后,可能是由于原表中有数据,向里面增加记录

编译器会提示有如下错误

project project1.exe raised exception class

EInvalidGridOperation with message 'Grid index out of range'.

Process stopped.Use Step or Run to continue.

按Run继续运行,问题消失.
 
你应该先看看是执行到哪一行出的错。
 
我认为:
1、数据库中记录的编号是从1开始的,这与其它的数据库是有区别的。当然你添加第
0号记录就会出错。
2、添加记录时使用
Table1.First确定一下数据库记录指针的位置/Table1.Edit; Table1.Append
以确定具体的记录操作。
 
这是Delphi4早期的BUG。
可能出现这种问题的原因
1、窗体出现滚动条
2、DBGrid放在一个Panel上
好象没有了。而且这种现象不是每次都能遇到的。
 
好象确实行的通。
 
后退
顶部