关于组件的开发 ( 积分: 100 )

  • 主题发起人 主题发起人 tuorx
  • 开始时间 开始时间
T

tuorx

Unregistered / Unconfirmed
GUEST, unregistred user!
我看了许多关于组件开发的例子,但我还是没看明白,
我把问题说具体一点,大家就我具体的问题给我讲一下吧。

我现在自定义一下组件TCWQry,从TAdoQuery继承来。
TAdoQuery有AfterScroll事件,所以TCWQry也就有AfterScroll事件,
我想在使用TCWQry的AfterScroll事件时,先执行我的一段公用代码,
我想把这段代码写在TCWQry类里,
该如何去做?

说得有点繁锁,不知道能不能看明白?
 
我看了许多关于组件开发的例子,但我还是没看明白,
我把问题说具体一点,大家就我具体的问题给我讲一下吧。

我现在自定义一下组件TCWQry,从TAdoQuery继承来。
TAdoQuery有AfterScroll事件,所以TCWQry也就有AfterScroll事件,
我想在使用TCWQry的AfterScroll事件时,先执行我的一段公用代码,
我想把这段代码写在TCWQry类里,
该如何去做?

说得有点繁锁,不知道能不能看明白?
 
override DoAfterScroll
 
为什么要写到TCWQry类里?写在AfterScroll事件就行啦!不用搞得繁锁吧!或者有什么另用?
 
重载TDataSet的DoAfterScrooll方法
//原方法为:
procedure TDataSet.DoAfterScroll;
begin
if Assigned(FAfterScroll) then FAfterScroll(Self);
end;
//改为:
procedure TDataSet.DoAfterScroll;
begin
if Assigned(FAfterScroll) then
begin
//你的代码
FAfterScroll(Self);
end;
end;
 
type
TCWQry = class(TADOQuery)
protected
procedure DoAfterScroll; override;
end;

implementation
procedure TCWQry .DoAfterScroll;
begin
你的代码...
inherited;
end;
 
谢谢,解决了
 
后退
顶部