API:Datasnap.DSCommonServer.TDSCustomAdmin.Create
Delphi
constructor Create; overload; override;
constructor Create(AOwner: TComponent); overload; override;
C++
__fastcall virtual TDSCustomAdmin(void)/* overload */;
__fastcall virtual TDSCustomAdmin(System::Classes::TComponent* AOwner)/* overload */;
Eigenschaften
Typ | Sichtbarkeit | Quelle | Unit | Übergeordnet |
---|---|---|---|---|
constructor | public | Datasnap.DSCommonServer.pas Datasnap.DSCommonServer.hpp |
Datasnap.DSCommonServer | TDSCustomAdmin |
Beschreibung
Erzeugt eine mit Standardwerten initialisierte Instanz einer Komponente und weist ihr Speicher zu.
Datasnap.DSCommonServer.TDSCustomAdmin.Create erbt von System.Classes.TComponent.Create. Der folgende Inhalt bezieht sich auf System.Classes.TComponent.Create.
Erzeugt eine mit Standardwerten initialisierte Instanz einer Komponente und weist ihr Speicher zu.
Alle Objekte verfügen über eine Methode Create, die das Objekt erzeugt. TComponent definiert Create neu, sodass die Methode Create für Komponenten auch folgende Funktionen ausführt:
- Sie richtet die Beziehung zwischen der Komponente und ihrem Eigentümer (Owner) ein, der im Parameter
AOwner
übergeben wird.
- Sie setzt die Eigenschaft ComponentStyle auf
csInheritable
, sodass die Komponente von einem abgeleiteten Formulartyp geerbt werden kann.
Komponenten, die im Formular-Designer hinzugefügt werden, müssen nicht explizit erzeugt werden. Diese Komponenten werden beim Start der Anwendung automatisch erzeugt und bei deren Beendigung freigegeben.
Für per Programm (also nicht im Formular-Designer) erzeugte Komponenten rufen Sie Create auf und übergeben die übergeordnete Komponente im Parameter AOwner
. Der Eigentümer entfernt die Komponente bei seiner Freigabe automatisch aus dem Speicher. Wenn die Komponente keinen Eigentümer hat, verwenden Sie Free, um sie freizugeben.
Tipp: Wenn Sie
Self
in Owner übergeben, müssen Sie beachten, auf welche Komponente die Referenz verweist. Wenn eine Komponente in einer ihrer Methoden eine andere Komponente erzeugt, bezieht sichSelf
auf die erste Komponente und nicht auf die erzeugte Komponente, die der ersten Komponente untergeordnet ist.
Anmerkung: Der Konstruktor von TComponent ist virtuell, um polymorphe Instantiierungen von Klassenreferenzen zu erlauben. Diese Möglichkeit ist für das Streaming-System und für den Formular-Designer von Bedeutung. Vergessen Sie nicht, die Direktive override zu verwenden, wenn Sie den Konstruktor Create einer neuen Komponente deklarieren.