![]() |
Re: Standardwert einer Eigenschaft
Zitat:
Das mit der Speicherung im DFM wusste ich nicht. Bringt zumindest beim Arbeiten mit Default-Werten ein bisschen Performance. Zumindest theoretisch. |
Re: Standardwert einer Eigenschaft
Zitat:
MfG Binärbaum |
Re: Standardwert einer Eigenschaft
Zitat:
Das event ist dafür da, etwas auszuführen, was der Benutzer deiner Komponente nach ihrem Erstellen tun möchte. |
Re: Standardwert einer Eigenschaft
Das Problem ist aber, das das Create (zur laufzeit) der im OI gesetzten eigenschaft wieder durch die im OnCreate überschreibt...
|
Re: Standardwert einer Eigenschaft
Zitat:
Aber in der Delphi-Hilde steht: Zitat:
|
Re: Standardwert einer Eigenschaft
Zitat:
so gehts doch -____-.... |
Re: Standardwert einer Eigenschaft
Sorry Leute, aber das ist doch alles Quatsch!!! :stupid:
Delphi-Quellcode:
Designzeit:
unit MyComponent;
interface uses Windows, Messages, SysUtils, Classes, Graphics; type TMyComponent = class(TComponent) private FColor: TColor; public constructor Create(AOwner: TComponent); override; published property Color: TColor read FColor write FColor default clBlack; end; procedure Register; implementation procedure Register; begin RegisterComponents('Beispiele', [TMyComponent]); end; { TMyComponent } constructor TMyComponent.Create(AOwner: TComponent); begin inherited; FColor := clBlack; end; end. - Platzieren der Komponente auf dem Formular --> Aufruf des Konstruktors (setzen der Standard-Werte durch Source im Create) - Speichern des Formulars (Eigenschaften, die mit dem Default-Wert übereinstimmen, werden nicht gespeichert) - Ändern der Eigenschaft - Erneutes Speichern (Eigenschaften, die vom Default-Wert abweichen werden gespeichert) Laufzeit: - Erzeugen des Formulars --> Aufruf des Konstruktors - Laden der dfm-Datei --> erzeugen aller auf dem Formular liegenden Komponenten --> Aufruf des Konstruktors jedes einzelnen --> Setzen der Eigenschaftswerte aus der Formulardatei - Aufruf des OnCreate-Events des Formulars Ich hoffe, das hilft etwas aus dieser allgemeinen Ratlosigkeit heraus. :wink: Wer Interesse hat, sollte sich eingehender mit dem Resourcen-Streaming-System von Delphi beschäftigen. Dann kommen auch so Sachen, wie ComponenteState zum Tragen, die hier noch nix zu suchen hatten. Das wird nur benutzt, wenn z.B. im Konstruktor etwas gemacht wird, was nur zur Laufzeit geschehen soll (z.B. Öffnen einer Verbindung zur Datenbank oder so). MfG Stevie |
Re: Standardwert einer Eigenschaft
Zitat:
|
Re: Standardwert einer Eigenschaft
Zitat:
|
Re: Standardwert einer Eigenschaft
Sorry, Leute aber mein Problem lag woanders, weshalb ich auch mit den Default-Wert Probleme hatte.
Jetzt ist alles klar. Die meisten von euch hatten auch recht. :thumb: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:08 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