Para
isso vamos criar um novo projeto, nele vamos adicionar: 
1
Form e salvar como ufoPrincipal
A
propriedade name : foPrincipal, um TBitBtn name BtCriaHerdeiro;
1
DataModule e salvar como udmPrincipal
Name
: dmPrincipal
1
Form e salvar como ufoPadrao
Name
: foPadrao
Nele
adicionaremos um  TGroupBox  com a propriedade align : alBottom, a
propriedade name : GbRodape e dentro do GbRodape um TbitBtn name BtFechar e um
Timage sendo o Timage opcional.
No
evento onclick do BtFechar.
procedure TFoPadrao.BtFecharClick(Sender: TObject);
begin
       self.Close;
end;
Agora
vamos criar um novo form com as caracteristicas do fopadrao.
File
=> New => Other =  Inheritable  Items, escolher o fopadrao e clicar em OK
(imagem1).    
Imagem 1
Pronto
temos um formulário que herdou as características do padrão, altere a
propriedade name para foHerdado, caption para Herdado e salve com ufoHerdado. 
No
código percebemos que ele é herdado da classe TfoPadrao.
unit ufoHerdado;
interface
uses
  Windows,
Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs,
ufoPadrao, StdCtrls, Buttons, dxGDIPlusClasses, ExtCtrls;
type
  TFoHerdado = class(TFoPadrao)
  private
    { Private
declarations }
  public
    { Public
declarations }
  end;
var
  FoHerdado:
TFoHerdado;
implementation
{$R
*.dfm}
end.
Ao
clicar no botão do foHerdado o seguinte código aparecerá.
procedure TFoHerdado.BtFecharClick(Sender: TObject);
begin
  inherited;
end;
Se
você retirar a palavra inherited e adicionar outro código o BtFechar perde suas
características, se você adicionar outro código você estará adicionando novos
comandos além dos presente no fopadrao.
No
foPrincipal no botão CriaHerdeiro adicione 
seguinte código
procedure TFoPrincipal.BtCriaHerdeiroClick(Sender:
TObject);
begin
   if FoHerdado
= nil then
       FoHerdado
:= TFoHerdado.Create(Application);
   FoHerdado.Show;
end;
O
resultado é este.
Em breve estaremos postando como destruir um formulário herdado, já que o FreeAndNil(Self), ou foherdado:= nil, não destrói o mesmo.
Download do projeto disponível neste link: https://www.dropbox.com/s/d3z8maonvbty86k/Heran%C3%A7aTutorial.zip
Download do projeto disponível neste link: https://www.dropbox.com/s/d3z8maonvbty86k/Heran%C3%A7aTutorial.zip
Nenhum comentário:
Postar um comentário