Opprett en kontroll ved name

Hvordan lage en kontroll når bare gitt klassenavn av control.First klassen må være registrert, er dette gjort i initialisering delen. RegisterClasses ([TEdit]); Så finner vi den klassen objektet (klasser er objekter for) for kontroll, og sjekk at det er faktisk en TCONTROL. CClass: = FindClass ('TEdit'); Hevde (CClass < > null); Hevde (CClass.InheritsFrom (TCONTROL)); slutt kastet vi klassen som TControlClass (for å kalle riktig konstruktør) og ringe Opprett. C: = TCONTROL (TControlClass (CClass) .Create (Selv)); Hele kode er below.function CreateControlByClassName (konst AClassName: string; AOwner: TComponent): TCONTROL; Var CClass: TClass; begynne CClass: = FindClass (AClassName); Hevde (CClass < > null); Hevde (CClass.InheritsFrom (TCONTROL)); Resultat: = TCONTROL (TControlClass (CClass) .Create (AOwner)); ende; initialisering RegisterClasses ([TEdit]); end
.



Previous:
Next Page: