Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Freigabe von TTimer? (https://www.delphipraxis.net/17967-freigabe-von-ttimer.html)

Chris P 12. Mär 2004 07:10


Freigabe von TTimer?
 
Hi Leute, ich habe eine Komponente von TLabel abgeleitet, die ihren eigenen Timer erzeugt.
Wenn ich die abgeleitete Komponente aufs Formular ziehe dann erscheint sie und auch automatisch der Timer. Aber wenn ich die abgeleitete Komponente vom Formular lösche, dann bleibt der Timer noch da und bringt das System zum Absturz. Wie sage ich dem Destructor dass er den Timer freigeben soll?

Dax 12. Mär 2004 07:12

Re: Freigabe von TTimer?
 
Wenn du den Timer als Child deiner komponente erzeugst, musst du ihn auch zerstören.

Also: Im Destruktor musst du ChildTimer.Destroy aufrufen!

Cuchulainn 12. Mär 2004 07:13

Re: Freigabe von TTimer?
 
Hallo,

du erstellst einen Destruktor:

Delphi-Quellcode:
destructor Destroy;
begin
  Timer.Free;
end;
So in der Art müsste es funktionieren.

Dax 12. Mär 2004 07:15

Re: Freigabe von TTimer?
 
@Cuchulainn: Erkläre mir bitte mal, wie der [delpih]-BBCode funktioniert :wink:

Chris P 12. Mär 2004 07:16

Re: Freigabe von TTimer?
 
Wo ist eigentlich der unterschied zwischen Free und Destroy?

Cuchulainn 12. Mär 2004 07:16

Re: Freigabe von TTimer?
 
Zitat:

Zitat von Dax
@Cuchulainn: Erkläre mir bitte mal, wie der [delpih]-BBCode funktioniert :wink:

Iss ja gut. Ich habe mich vertippt ;)

Dax 12. Mär 2004 07:17

Re: Freigabe von TTimer?
 
Kuck mal in der OH von Delphi oder im MSDN, aber ich glaube, es ist so ziemlich das selbe.

Chris P 12. Mär 2004 07:18

Re: Freigabe von TTimer?
 
ok danke :-D

Cuchulainn 12. Mär 2004 07:19

Re: Freigabe von TTimer?
 
Zitat:

Zitat von Chris P
Wo ist eigentlich der unterschied zwischen Free und Destroy?

Free überprüft, ob die Objektinstanz nicht nil ist und ruft nur bei Bedarf Destroy automatisch auf. In der Hilfe wird empfohlen, Destroy nicht direkt aufzurufen.

Luckie 12. Mär 2004 07:23

Re: Freigabe von TTimer?
 
... weil, wenn das Objekt nicht existiert, dir alles um die Ohren fliegt bei Destroy.


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:49 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz