Autor Beitrag
jjturbo
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 495

Win2000 prof., WinXP prof.
D4 Stand., D5 Prof, D7 Prof, D2007 Prof.
BeitragVerfasst: Fr 05.02.21 08:38 
Moin Forum,

schreibe gerade eine neue Komponente unter Delphi 10.4(Tokyo).
Die Kompo wird angezeigt und funktioniert auch so wie gewünscht.
Jetzt hätte ich gerne im Objektinspektor einen Eintrag den man aufklappen kann um ein paar Optionen einzustellen.
Unter "Published" gibt es den entsprechenden Eintrag:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
type
  TMeineKompo = class(TShape)
.
.
.
  private
   fLED :TLED;
  published
    property LED          :TLED read fLED write LEDGeaendert;

Deklaration von TLED:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
type TLEDShape = (sArrowDown,sArrowLeft,sArrowRight,sArrowUp,sRectangle,sRound);


type
  TLED = Class(TObject)
    fColorOn  :TColor;
    fColorOff :TColor;
    fHeight   :Integer;
    fWidth    :Integer;
    fShape    :TLEDShape;
  published
    property ColorOn  :TColor read fColorOn write fColorOn;
    property ColorOff :TColor read fColorOff write fColorOff;
    property Height   :Integer read fHeight write fHeight;
    property width    :Integer read fWidth write fWidth;
    property Shape    :TLEDShape read fShape write fShape;
  public
    { Public-Deklarationen }
  end;


Im Constructor Create wird diese Option erzeugt:
ausblenden Delphi-Quelltext
1:
  LED := TLED.Create;					


Jetzt sehe ich diesen Eintrag "LED" im OJ, man sieht auch den Pfeil zum aufklappen, aber die darunter liegenden Einträge sieht man nicht. Was mache ich denn falsch?
Danke und Gruß, Oliver

_________________
Windows XP: Für die einen nur ein Betriebssystem - für die anderen der längste Virus der Welt...
Th69
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Moderator
Beiträge: 4364
Erhaltene Danke: 939

Win10
C#, C++ (VS 2015/17/19)
BeitragVerfasst: Fr 05.02.21 09:12 
Hallo,

lies mal Creating Properties for Subcomponents - ich denke, deine Klasse LED muß mindestens von TComponent erben (beachte auch den Hinweis bzgl. Owner sowie den Streaming-Mechanismus).

PS: 10.4 wird Sydney genannt (10.2 war Tokyo).