继承窗体

本文介绍了一个使用Delphi实现的简单继承示例。通过TForm1和TMyForm两个类展示了如何通过继承来复用代码,并且演示了如何在子类中覆盖父类的方法以增加额外的功能。
ContractedBlock.gifExpandedBlockStart.gifCode
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 
= class(TForm)
    Button1: TButton;
    Button2: TButton;
    
procedure Button1Click(Sender: TObject);
    
procedure Button2Click(Sender: TObject);
  
private
    
{ Private declarations }
  
public
    
{ Public declarations }
  
end;


  
{继承 TForm1 的类: TMyForm}
  TMyForm 
= class(TForm1)
     
procedure Button1Click(Sender: TObject);
  
end;

var
  Form1: TForm1;  
//声明 TForm1 的实例
  MyForm1: TMyForm;  
//声明 TMyForm 的实例
implementation

{$R *.dfm}

//Form1 上有两个按钮, Button1: 弹出信息; Button2: 创建并显示 MyForm1
procedure TForm1.Button1Click(Sender: TObject);
begin
  ShowMessage(
'TForm1');
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  MyForm1 :
= TMyForm.Create(nil);
  MyForm1.Show;
end;


{ TMyForm }
//TMyForm1 被创建后, 应该和 TForm1 一摸一样;
//Button2: 会继续创建并弹出新的 TMyForm1
//Button1: 会弹出两条信息, 因为继承了一条
procedure TMyForm.Button1Click(Sender: TObject);
begin
  
inherited;  //继承 Button1 原有的功能
  ShowMessage(
'TMyForm');
end;

end.

转载于:https://www.cnblogs.com/jxgxy/archive/2009/11/12/1601707.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值