S
superhero
Unregistered / Unconfirmed
GUEST, unregistred user!
自己从TFrame继承一个TmyFrame,并且新增了一个事件
TmyFrame = class(TFrame)
protected
FOnCreate: TNotifyEvent;
published
property OnCreate: TNotifyEvent read FOnCreate write FOnCreate;
end;
但我通过file->new->other...选择本项目所属TabPage中的TmyFrame这一Frame后
OnCreate事件并不在属性列表的事件表中列出来,实际上如果新增的是一个数据属性倒无所谓,该怎么访问就怎么访问,但是事件就不能处理了,没有地方让OnCreate重指向某一处理
过程。
把TmyFrame做成控件的方法也试过,虽然能够列出来,但是必须依附在别的窗口上,不能做成单独的Frame
实际上这样的应用还有很多,例如我想在做Delphi项目的时候所有的Form都来自我自己定义的一个TmyForm,这其中可以设置一些共性的东西,而delphi本身提供的TForm隐藏掉了
很多windows message,只提供了部分事件让我们来写,总感觉不爽
各位牛人又没有碰到过,都是怎么解决的?
我现在应急做法是定义各事件对应的方法(如myCreate),但是加上virtual关键字,并且在constructor
create中指定OnCreate为此方法
子类中如果要在OnCreate事件中写代码,在子类中声明myCreate方法,加上override关键字
实现中写上相应代码。
TmyFrame = class(TFrame)
protected
FOnCreate: TNotifyEvent;
published
property OnCreate: TNotifyEvent read FOnCreate write FOnCreate;
end;
但我通过file->new->other...选择本项目所属TabPage中的TmyFrame这一Frame后
OnCreate事件并不在属性列表的事件表中列出来,实际上如果新增的是一个数据属性倒无所谓,该怎么访问就怎么访问,但是事件就不能处理了,没有地方让OnCreate重指向某一处理
过程。
把TmyFrame做成控件的方法也试过,虽然能够列出来,但是必须依附在别的窗口上,不能做成单独的Frame
实际上这样的应用还有很多,例如我想在做Delphi项目的时候所有的Form都来自我自己定义的一个TmyForm,这其中可以设置一些共性的东西,而delphi本身提供的TForm隐藏掉了
很多windows message,只提供了部分事件让我们来写,总感觉不爽
各位牛人又没有碰到过,都是怎么解决的?
我现在应急做法是定义各事件对应的方法(如myCreate),但是加上virtual关键字,并且在constructor
create中指定OnCreate为此方法
子类中如果要在OnCreate事件中写代码,在子类中声明myCreate方法,加上override关键字
实现中写上相应代码。