![]() |
Re: komponeten eigenschaften
:wiejetzt:
? OI = Objekt Inspector? wie soll mir das helfen? ich will in der create prozedur einfach nur die eigenschaften meiner komponete festlegen! |
Re: komponeten eigenschaften
Also sage doch mal genau was Du willst. Soll das ganze zur Laufzeit geschehen ? Dann schreibe das doch in deinem Constructor mit rein, daß die Farbe weiß ist. Direkt hinter dem inherited.
|
Re: komponeten eigenschaften
weis ich:
Zitat:
|
Re: komponeten eigenschaften
Wie wäre es mit
Delphi-Quellcode:
...:cat:...
constructor TTest.Create(AOwner : TComponent);
begin inherited Create(AOwner); Color := clWhite; end; |
Re: komponeten eigenschaften
Noch was zum Thema default. Der Wert der dort angeben wird, wird durch Delphi nicht automatisch initialisiert. Das gibt der IDE lediglich an, daß, wenn dieser Wert im OI eingetragen wird, daß dieser nicht gespeichert/geladen werden muss, da die Komponente dieses automatisch so tut ;-)
Delphi-Quellcode:
im Constructor müsste dieser Wert dann unbedingt gesetzt werden, ansonsten kann es zu unerwartetem Verhalten der Komponente kommen ;-)
type
TArt = (1, 2, 3, 4); type TTest = class(tpanel) private { Private declarations } Art : TArt; protected { Protected declarations } public { Public declarations } constructor Create(AOwner: TComponent); override; published { Published declarations } property nummer : TArt read Art write Art default 3; end;
Delphi-Quellcode:
...:cat:...
constructor TTest.Create(AOwner : TComponent);
begin inherited Create(AOwner); Nummer := 3; end; |
Re: komponeten eigenschaften
auf das simpelste kommt man nicht! :wall:
und wie kann ich auf die eigenschaftsänderung reagieren? |
Re: komponeten eigenschaften
Auch recht einfach:
Code:
...:cat:...
type
TArt = (1, 2, 3, 4); type TTest = class(tpanel) private { Private declarations } Art : TArt; [color=#f50000]procedure SetArt(Value: TArt);[/color] protected { Protected declarations } public { Public declarations } constructor Create(AOwner: TComponent); override; published { Published declarations } property nummer : TArt read Art write [color=#ff0000]SetArt [/color] default 3; end; [color=#f50000]procedure TTest.SetArt(Value: TArt); begin if Value <> Nummer then begin // ÄNDERUNG Nummer := Value; end; end;[/color] |
Re: komponeten eigenschaften
Ich gebe Dir mal noch einen Lesetipp, da steht das alles drinne ;-)
![]() ...:cat:... |
Re: komponeten eigenschaften
Noch ein Lese-Tipp - meine OOP-Ausarbeitung:
![]() |
Re: komponeten eigenschaften
wenn ich das mache...
Zitat:
kannst du mir helfen |
Alle Zeitangaben in WEZ +1. Es ist jetzt 11: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