Вниз
Скачать: CL | DM;

Почему вызывается деструктор фрейма созданного *.Create(nil)?   Найти похожие ветки 

 
Kolan ©   (2009-04-13 12:44) [0]

Здравствуйте!

Есть фрейм, который создается так:

procedure TSimpleDBAnalysisColleague.CreateFrame(Owner: TWinControl);
begin
 SimpleDBAnalysisFrame := TSimpleDBAnalysisFrame.Create(nil);
 SimpleDBAnalysisFrame.Parent := Owner;
 SimpleDBAnalysisFrame.Align := alClient;
 SimpleDBAnalysisFrame.MeasurementsDeleteVisitor := GetMeasurementsDeleteVisitor;
 SimpleDBAnalysisFrame.MeasuremantsOpenVisitor := GetMeasurementsOpenVisitor;
 SimpleDBAnalysisFrame.ParamsDictionaryLoadVisitor := GetParamsDictionaryLoadVisitor;
 SimpleDBAnalysisFrame.SimpleSettingsManager := GetSettingsManager;
end;


Вопрос: Почему деструктор этого фрейма вызывается автоматически?

Под автоматическим вызовом подразумевается следующее (стек):
KFreGrafSimpleDBAnalysisFrame.TSimpleDBAnalysisFrame.Destroy
Controls.TWinControl.Destroy
ComCtrls.TTabSheet.Destroy
Controls.TWinControl.Destroy
ComCtrls.TCustomTabControl.Destroy
ComCtrls.TPageControl.Destroy
Controls.TWinControl.Destroy
Forms.TScrollingWinControl.Destroy
Forms.TCustomForm.Destroy
Classes.TComponent.DestroyComponents
Forms.DoneApplication
SysUtils.DoExitProc
System.@Halt0
KFreGraf.KFreGraf
:0057eb53 TSimpleDBAnalysisFrame.Destroy + $B


 
Palladin ©   (2009-04-13 12:45) [1]

Потому что:

SimpleDBAnalysisFrame.Parent := Owner;


 
Palladin ©   (2009-04-13 12:47) [2]

http://delphimaster.net/view/2-1237889881/


 
Kolan ©   (2009-04-13 12:52) [3]

Понятно. Я подозревал, но не верил своим подозрениям. Благодарю.


 
Kolan ©   (2009-04-13 14:47) [4]

Так, ладно. А при создании серии TeeCharta таким способом:

{{{
constructor TSerieGraph.Create(Chart: TChart; Color: TColor);
begin
 inherited;
 FChart := Chart;
FSerie := CreateSerie(FChart);
 FSerie.SeriesColor := Color;
 FChart.AddSeries(FSerie);
end;

function TSerieGraph.CreateSerie(AOwner: TComponent): TChartSeries;
begin
 Result := TChartSeries.Create(AOwner);
end;
}}}

Серии тоже будут удалены автоматом? У них же владелец — чарт, который лежит на форме...



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.19 c
4-1210141335
Игорь
2008-05-07 10:22
2009.05.24
Привилегии в Windows Vista


4-1210156637
A.L.E.X.A.N.D.E.R.
2008-05-07 14:37
2009.05.24
Создание процесса от имени системы .


3-1221207594
ganda
2008-09-12 12:19
2009.05.24
Вопрос по запросам


2-1239278888
Kolan
2009-04-09 16:08
2009.05.24
Умный поиск по БД вместо фильтрации. Как реализовать?


2-1239343514
Гость
2009-04-10 10:05
2009.05.24
Работа с потоками.




   Наверх