Delphi-PRAXiS

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 Tcomponent descendant (https://www.delphipraxis.net/2554-tcomponent-descendant.html)

nebukadnezzar 29. Jan 2003 14:20


Tcomponent descendant
 
Also ich hab ne Klasse von TComponent Abgeleitet.
Diese Klasse soll als "Einstellungs interface" zur Designtime dienen.
Daher besteht es eigentlich nur aus Properties (vorwiegend TColor).

Das Problem:
ich habe ungefähr 10 Tcolor Prpoerties nur merkt der sich da nicht die Farben und zeigt ClBlack an - auch wenn ich andere ind die *.dfm per hand reinschreibe.
Nach soeicher und laden sind im Objekt inspektor ebenfalls alle farben weg - das ist aber nur bei farben - bei den 2-3 anderen Properties tritt das problem nicht auf!

Die properties sehen ungefähr so aus:
Delphi-Quellcode:
type myclass=class(tcomponent)
 private
   F1,F2,F3,F4:Tcolor
 published
   property Farbe1:Tcolor read F1 write F1 default clgreen;
   property Farbe2:Tcolor read F2 write F2 default clred;
   property Farbe3:Tcolor read F3 write F3 default clyellow;
   property Farbe4:Tcolor read F4 write F4 default $b0b0b0b;
end;
(nur ein auszug)

Christian Seehase 29. Jan 2003 14:32

Moin Nebukadnezzar,

die Angabe Default hat nichts mit dem Wert zu tun, der dann im OI angzeigt wird. Schau Dir das doch mal in der Hilfe an (ich wüsste jetzt nicht, wie ich's erklären sollte ;-))

Um bestimmte Werte vorzugeben, musst Du sie explizit im Konstruktor der Komponente setzen.

Das das bei anderen Eigenschaften funktioniert hat (vermeintlich) muss Zufall gewesen sein.

nebukadnezzar 29. Jan 2003 15:21

ne das ist nicht das problem, denn wenn ich die Props im OI umstelle
und das Programm laufen lasse hats keinen effekt und
wenn ich speichere und lade ist alles wieder auf ClBlack

Christian Seehase 29. Jan 2003 16:29

Moin Nebukadnezzar,

Zitat:

denn wenn ich die Props im OI umstelle
und das Programm laufen lasse hats keinen effekt
In welchem Zusammenhang soll es sich den Auswirken?

Beispielsweise hat es grundsätzlich keine Auswirkung die Schriftfarbe einer TButton Kompo zu ändern. Die bleibt immer auf schwarz.

Zitat:

wenn ich speichere und lade ist alles wieder auf ClBlack
Hast Du schon mal probiert default wegzulassen?


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:12 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 by Thomas Breitkreuz