Вначале сделаем интерфейс для нашего объекта:

 

Code:

type

IAutoClean = interface

['{61D9CBA6-B1CE-4297-9319-66CC86CE6922}']

end;

 

TAutoClean = class(TInterfacedObject, IAutoClean)

private

FObj: TObject;

public

constructor Create(AObj: TObject);

destructor Destroy; override;

end;

 

implementation

 

constructor TAutoClean.Create(AObj: TObject);

begin

FObj := AObj;

end;

 

destructor TAutoClean.Destroy;

begin

FreeAndNil(FObj);

inherited;

end;

 

А теперь будем использовать его вместо объекта:

 

Code:

procedure TForm1.Button1Click(Sender: TObject);

var

a: IAutoClean;

//must declare as local variable, so when this procedure finished, it's out of scope

o: TOpenDialog; //any component

begin

o := TOpenDialog.Create(self);

a := TAutoClean.Create(o);

if o.Execute then

ShowMessage(o.FileName);

end;

 

 

 

 

 

Взято с Delphi Knowledge Base: https://www.baltsoft

Добавить комментарий

Не использовать не нормативную лексику.

Просьба писать ваши замечания, наблюдения и все остальное,
что поможет улучшить предоставляемую информацию на этом сайте.

ВСЕ КОММЕНТАРИИ МОДЕРИРУЮТСЯ ВРУЧНУЮ, ТАК ЧТО СПАМИТЬ БЕСПОЛЕЗНО!


Защитный код
Обновить