宏调用--调用另一FORM上的控件,使其动作(在线等) ( 积分: 100 )

  • 主题发起人 主题发起人 newlife2005
  • 开始时间 开始时间
N

newlife2005

Unregistered / Unconfirmed
GUEST, unregistred user!
三个FORM,frmA,frmB,frmC

frmA,frmB上有个自已的组件ZJ,ZJ有方法 ZJ.gotopageX(x)

问题,frmC某动作后 ,frmA或frmB上的ZJ执行 ZJ.gotopageX(x)

frmC可以知道frmA或frmB的类名或实例名,frmC有没一种通用的写法来调用?

当然这样是可以的 :
case ....
frmA.ZJ.gotopageX(x)
frmB.ZJ.gotopageX(x)

但当 frmA,frmB...较多时,显得不方便.
想找一种类似其他语言的宏调用写法,几句话解决。
请指教!
 
三个FORM,frmA,frmB,frmC

frmA,frmB上有个自已的组件ZJ,ZJ有方法 ZJ.gotopageX(x)

问题,frmC某动作后 ,frmA或frmB上的ZJ执行 ZJ.gotopageX(x)

frmC可以知道frmA或frmB的类名或实例名,frmC有没一种通用的写法来调用?

当然这样是可以的 :
case ....
frmA.ZJ.gotopageX(x)
frmB.ZJ.gotopageX(x)

但当 frmA,frmB...较多时,显得不方便.
想找一种类似其他语言的宏调用写法,几句话解决。
请指教!
 
使用多态
定义一个父类。P
将要实现的方法定义为抽象方法。(声明为虚拟也可以)gotoy
然后继承该类。A,B
在使用的时候。
你直接
在使用的时候
procedure (x: P);
begin

x.gotoy;
end;
 
有点抽象,能否给个稍微具体些的?感谢!
 
建议你能去了解一下面向对象编程的相关知识,重点看一下什么是多态。
因为我是在网吧上网,所以我不太可能能给出很完整的答案。
请见量。

在论坛重点是寻求解决问题的思路,别人不太可能帮你完全解决问题。
 
方法之一:可以参考 http://www.delphibbs.com/keylife/iblog_show.asp?xid=7192
 
后退
顶部