![]() |
Feldvariable in Klasse Initialisieren
guten Morgen zusammen,
ich würde gerne eine Integer Feldvariable direkt in der dazugehörigen Klasse mit dem Wert 1 initialisieren. Ist das irgendwie möglich und wo mache ich dann die Initialisierung? Die Varible ist in unten stehende Klasse enthalten und heist FeditEventID.
Delphi-Quellcode:
interface
type TifEditEvent = class private FeditEventID: Integer; public property editEventID: Integer read FeditEventID write FeditEventID; end; Ich danke schon mal im Voraus Gruß TankWart |
Re: Feldvariable in Klasse Initialisieren
also ich würde das im constructor der klasse machen
|
Re: Feldvariable in Klasse Initialisieren
Zitat:
Delphi-Quellcode:
interface
type TifEditEvent = class private FeditEventID: Integer; public Constructor Create ; override ; property editEventID: Integer read FeditEventID write FeditEventID; end; implementation constructor TidEditEvent.Create ; begin inherited ; FeditEventID := 4711 ; end ; |
Re: Feldvariable in Klasse Initialisieren
Hallo!
ich mache das zwar auch immer im Constructor, habe jedoch auch mal folgende Sache gesehen (und noch nicht ausprobiert):
Delphi-Quellcode:
Wäre das nun das gleiche?
property editEventID: Integer read FeditEventID write FeditEventID default 1;
EDIT Habe gerade das gefunden aus der Delphi-Hilfe: "Eigenschaftswerte werden nicht automatisch auf den Standardwert initialisiert, d. h. die Standarddirektive steuert nur das Speichern von Eigenschaftswerten in der Formulardatei und nicht das Speichern des ersten Werts der Eigenschaft in einer neu erstellten Instanz." Gruß Pfoto |
Re: Feldvariable in Klasse Initialisieren
Wenn du published Eigenschaften einer Komponente mit einem default Wert versiehst, so wird diese nicht in der .dfm Datei gespeichert, falls die Eigenschaft diesen Wert annimmt. default heisst aber nicht, dass die Eigenschaft mit dem Wert initialisiert wird.
|
Re: Feldvariable in Klasse Initialisieren
Danke für die schnellen Antworten,
haben mir alle was gebracht. Gruß TankWart |
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:04 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz