一个关于数据库记录移动事件的问题(50分)

T

tl9622

Unregistered / Unconfirmed
GUEST, unregistred user!
我在做一个数据库时,想在数据库记录移动后运行
frmSw.lblLd1.Caption:=DataSet.Fields.FieldByName('Ldmc1').AsString+'批示:';
frmSw.lblLd2.Caption:=DataSet.Fields.FieldByName('Ldmc2').AsString+'批示:';
frmSw.lblLd3.Caption:=DataSet.Fields.FieldByName('Ldmc3').AsString+'批示:';
frmSw.lblLd4.Caption:=DataSet.Fields.FieldByName('Ldmc4').AsString+'批示:';
但是,我怎么都找不到数据库指针移动后的事件,只有一个OnWillMove事件,但是这是
移动以前的,用MoveComplete又会时我的程序中记录移动都会出错,请教该如何解决。
我使用的是TADODataSet控件,移动记录用Locate方法
 
afterscroll事件没有吗?
 
我也试过afterscroll事件了,但是程序一运行就提示内存出错
 
你的代码有什么问题吗?
 
没错,是AfterScroll呀
 
就是:
afterscroll事件啊!
这个事件是从TDataSet中继承下来的啊。
 
我用这个事件后,老是提示内存读错误,但是继续运行程序却没有问题,该如何解决呢?
 
to;tl9622,
给点出错提示看看
 
Project SFW.exe raised exception class EAccessViolation with message 'Access violation at address
004B5D48 in module 'SFW.exe',Read of address 0000022E'.Process stopped,Use Step or Run to
continue
还有一些需要说明,我的TADODataSet是放在DataModel中的,frmSw是一个MDIChild,而且是从
一个窗口继承下来的,我想在就是怀疑这个frmSw的问题,但是,我实在是找不出来
 
to:tl9622
有可能是控件的问题,或系统的问题
我觉得你先测试一下,比如在DataModel.TADODataSet.afterscroll事件中
随便加一个函数比如:
showmessage('hello');
在看反映如何.
实在不行就
try
execpt
end;
算了。
 
clever_boy_2000,非常感谢您的热心指教,不知道您有没有QQ,可否在QQ上聊,我试过
try了,没用,这个错误应该不属于类里面定义的错误的,是读写内存的时候出错,但是
这个错误真的是很奇怪的,继续运行了以后就没有问题了
 
多人接受答案了。
 
to:tl9622
交个朋友吧
QQ:11367433
 
顶部