Registriert seit: 14. Apr 2008
3.006 Beiträge
Delphi 2009 Professional
|
AW: Abstrakter Fehler beim freigeben einer Komponente unter Delphi XE
24. Aug 2012, 13:21
TAdvPanel(Hauptform.FindComponent('SatzEditPanel'+ IntToStr(PanelNr))).Free;
Der Hardcast zu TAdvPanel ist unnötig.
Tritt der Fehler auch auf wenn das Free mit dieser Zeile ausgeführt wird?
Hauptform.FindComponent('SatzEditPanel'+ IntToStr(PanelNr)).Free;
Wenn der Sourcecode vorhanden ist, könnte man die eigentliche Ursache des Abstract Errors auch mit dem Debugger finden. Es wird eine abstrakte Methode aufgerufen, nur für welches Objekt das geschieht ist die Frage.
Auch ist es bei selbsterzeugten Komponenten nicht notwendig den Owner anzugeben, wenn man sie selbst wieder freigibt.
Also statt
TAdvPanel.Create(self)
einfach
TAdvPanel.Create(nil)
Michael Justin
|