用法二: type TFormBase = class(TForm) public function Execute: Boolean; virtual; end; TForm1 = class(TFOrmBase) public function Execute: Boolean; override; end; function TForm1.Execute: Boolean; //你类中定义的一个方法 begin Result:=inherited Execute; //调用TFormBase类中的EXECUTE方法,将你类返回的结果给 //TFORM1中的EXECUTE函数的结果。 end;
类声明如下:
type
TFormBase = class(TForm);
end;
...
TForm1 = class(TFormBase)
end;
那么:
procedure TForm1.FormCreate(Sender: TObject);
begin
inherited; //将调用TFormBase中的FormCreate事件。
Edit1.Text:='';
end;
type
TFormBase = class(TForm)
public
function Execute: Boolean; virtual;
end; TForm1 = class(TFOrmBase)
public
function Execute: Boolean; override;
end;
function TForm1.Execute: Boolean; //你类中定义的一个方法
begin
Result:=inherited Execute; //调用TFormBase类中的EXECUTE方法,将你类返回的结果给
//TFORM1中的EXECUTE函数的结果。
end;
你说 “调用你类中的某个代码”,那么具体调用哪歌代码呢?是不是从基类中继承来的所有方法?
比如:
类声明如下:
type
TFormBase = class(TForm);
public :
fun1() : integer;stdcall;
fun2() :integer :stdcall;
fun3() : integer :stdcall;
end;
...
TForm1 = class(TFormBase)
end;
那么:
procedure TForm1.FormCreate(Sender: TObject);
begin
inherited; //将调用TFormBase中的FormCreate事件,
//它是否会自动调用fun1 fun2 fun3等方法呢?----关键!
Edit1.Text:='';
end;
----------------------------------------------------------------
原贴内容:
谢谢你的解答。但我还是有点不 明白。
你说 “调用你类中的某个代码”,那么具体调用哪歌代码呢?是不是从基类中继承不会自动调用fun1, func2,func3如果你要自动调用:
TForm1.FormCreate(Sender: TObject);
begin
inherited FormCreate(Sender);
inherited Func1();
interited Func2();
inherited Func3();
end;或者是:
TForm1.FormCreate(Sender: TObject);
begin
inherited FormCreate(Sender);
Func1();
Func2();
Func3();
end;