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 [RTTI] prüfen ob TWinControl andere Controls enthalten darf (https://www.delphipraxis.net/94250-%5Brtti%5D-pruefen-ob-twincontrol-andere-controls-enthalten-darf.html)

_frank_ 18. Jun 2007 19:49


[RTTI] prüfen ob TWinControl andere Controls enthalten darf
 
Hallo,
wie prüft die Delphi-IDE, ob ein Control andere Controls enthalten darf?

prinzipiell kann man in ein TWinControl ja jedes andere TControl reinsetzen, aber z.b. TCheckBox,TRadioButton, etc. sind TWinControls, welche in der IDE keine Subcontrols erlauben (außer man editiert die DFM direkt).

habe schon gesucht, aber habe nichts zu dem Thema gefunden.
wie könnte man sowas realisieren? gibts da irgendwo versteckt in den TypInfos ein flag, welches mir dabei hilft?

Gruß Frank

SirThornberry 18. Jun 2007 19:54

Re: [RTTI] prüfen ob TWinControl andere Controls enthalten d
 
wenn im ControlStyle das Flag csAcceptsControls integriert ist erlaubt die IDE das aufnehmen von anderen Controls.

_frank_ 18. Jun 2007 21:04

Re: [RTTI] prüfen ob TWinControl andere Controls enthalten d
 
Hi SirT,
danke für deine Antwort.

controlstyle benötigt imho eine Instanz, oder irre ich mich da?
somit müsste ich erst eine solche erzeugen...über die rtti gibts da wohl keine Möglichkeit?

Gruß Frank

Muetze1 18. Jun 2007 23:46

Re: [RTTI] prüfen ob TWinControl andere Controls enthalten d
 
Erst der Code der Klasse setzt den ControlStyle und von daher hast du ohne Instanz keine Chance. Die RTTI Informationen müssen zur Compiletime vorliegen und von daher können keine aktiven Anweisungen zum Setzen des ControlStyle ausgewertet werden und dort einfließen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:35 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz