Semplicemente, non puoi, a meno di non creare un altro costruttore con parametri differenti in overload o con un nome diverso.Originariamente inviato da denis76
Data una classe che estende TPanel con il seguente costruttore
[...]
come posso fare per passare un altro valore oltre ad AOwner: TComponent??
Se ridefinisci il costruttore ereditato tramite override, esso deve avere ovviamente gli stessi parametri in quanto dev'essere accessibile anche utilizzando una variabile che appartiene alla classe base che lo introduce (TComponent).
In ogni caso, non potresti ottenere la chiamata al costruttore "appoggiando" il controllo sul Form in quanto Delphi invocherebbe il costruttore di TComponent e non il tuo "costruttore alternativo"; il tuo costruttore viene chiamato ovviamente se, sfruttando il concetto di polimorfismo della OOP, ridefinisci il costruttore ereditato dalla classe base tramite override, ma in tal caso - come detto all'inizio - non puoi variarne il prototipo.
A cosa ti servirebbe? Qual è lo scopo che desideri ottenere? :master:
Ciao!![]()