在写一个组件时,如果父类中有一个OnChange事件,在其它程序使用该组件时,如何达到以下效果:
1、在OnChange事件中,先执行自己在组件中写入的代码,再执行父类的代码;
2、在OnChange事件中,先执行父类的代码,再执行自己在组件中写入的代码;
为实现以上目的,在组件中应该如何写?
1、在OnChange事件中,先执行自己在组件中写入的代码,再执行父类的代码;
2、在OnChange事件中,先执行父类的代码,再执行自己在组件中写入的代码;
为实现以上目的,在组件中应该如何写?
解决方案 »
- delphi order by排序问题:请各位帮检查一写法有何错误,谢谢
- 怎样获取一个VB程序中的表格(flexgrid)中的数据
- 各位仁兄,这个问题闲了我一个多星期都不得其解,哪位能帮我解决不胜感激,分不够再加
- 如何通过DELPHI与WINDOWS系统中的按钮和文本框连接?
- 急!急!急!bcdtostr 怎么用100分
- 如何用TQRLabel打印Memo字段?
- 500分!!!ie编程的超难的古怪问题,问过多人未果。请高手相助!
- 一个关于压缩access数据库的问题
- SOS : 关于SQL的存储过程的问题,help me
- 在DELPHI的FORM中怎样打开IE,然后让IE打开FORM送过来的URL???
- 如何从一字符串中取出其中一个字符?
- 超级Flash播放器(SuperFlashPlayer)软件策划[欢迎有兴趣的朋友共同参与]
procedure DoChange(Sender: TObject);procedure TMyComponent.DoChange(Sender: TObject);
begin
// 自己的代码
inherited OnChange(Sender);
// 自己的代码
end;
procedure DoChange(Sender: TObject);
constructor Create(AOwner: TComponent);constructor TMyComponent.Create(AOwner: TComponent);
begin
OnChange:= DoChange;
end;procedure TMyComponent.DoChange(Sender: TObject);
begin
// 自己的代码
inherited OnChange(Sender);
// 自己的代码
end;
unit Button1;interfaceuses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls;type
TButton1 = class(TButton)
private
FEdit:TEdit;
{ Private declarations }
protected
{ Protected declarations }
public
constructor Create(AOwner:TComponent);Override;
destructor Destroy; override;
procedure Click; override;
{ Public declarations }
published
property Edit: TEdit read FEdit write FEdit;
{ Published declarations }
end;procedure Register;implementationprocedure Register;
begin
RegisterComponents('Standard', [TButton1]);
end;constructor TButton1.Create(AOwner:TComponent);
begin
inherited Create(AOwner);
end;destructor TButton1.Destroy;
begin
inherited Destroy;
end;procedure TButton1.Click;
begin
FEdit.Text:='test111';
inherited Click;
end;end.
1、去掉事件名称前的On;
2、去掉事件参数中的Sender。
如果没有这样的规则,怎么知道继承的事件过程的名称?
谢谢两位的帮助!