forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Delphi (http://forum.boolean.name/forumdisplay.php?f=66)
-   -   Как N классам присвоить один и тот же конструктор? (http://forum.boolean.name/showthread.php?t=18509)

Kolobok 01.09.2013 22:22

Как N классам присвоить один и тот же конструктор?
 
Код:

MyTForm = class(TForm)
public
  constructor Create(AOwner: TComponent); override;
  destructor Destroy; override;
end;

MyTButton = class(TButton)
public
  constructor Create(AOwner: TComponent); override;
  destructor Destroy; override;
end;

MyTEdit = class(TEdit)
public
  constructor Create(AOwner: TComponent); override;
  destructor Destroy; override;
end;

Подскажите, как можно избежать описания одних и тех же процедур классов!?
Как можно сделать так, чтобы все классы юзали один описанный конструктор, но классы не наследуют друг друга...
Нужно чтобы в конструкторе вызвался мой код и потом конструктор родителя.

Как мне нужно построить код, чтобы не получилось типа такого !?
Код:

constructor MyTForm.Create(AOwner: TComponent);
begin
  inherited;
  MyCode();
end;

destructor MyTForm.Destroy;
begin
  MyCode();
  inherited;
end;

constructor MyTButton.Create(AOwner: TComponent);
begin
  inherited;
  MyCode();
end;

destructor MyTButton.Destroy;
begin
  MyCode();
  inherited;
end;

constructor MyTEdit.Create(AOwner: TComponent);
begin
  inherited;
  MyCode();
end;

destructor MyTEdit.Destroy;
begin
  MyCode();
  inherited;
end;


Чтобы процедуры были описаны единожды для все классов, чтобы не копипастить процедуры...

Kolobok 01.09.2013 22:49

Ответ: Как N классам присвоить один и тот же конструктор?
 
Придумал! Блин какой я гений... XD
Опишу что нужно отдельно, возле кода вызова конструктора...
Хотя это не решает мой вопрос, но это не плохая альтернатива...


Часовой пояс GMT +4, время: 10:06.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot