JavascriptProva

giovedì 30 agosto 2012

Preparazione alla creazione di una procedura template che istanzi una classe con più costruttori

Voglio costruire una procedura template fatta bene, che utilizzi più costruttori di una classe.
Creo un nuovo programmino di sana pianta per esercitarmi...

Costruisco una classe che eredita da Label:
Class classe
    Inherits Label
    Sub New()
        BackColor = Color.Red
    End Sub
    Sub New(ByVal stringa As String)
        BackColor = Color.Cyan
    End Sub
End Class
Questa classe possiede due costruttori (overloading dei costruttori, ricordiamo dal C++): uno senza parametri, che dà alla casella un colore rosso, e uno con un parametro stringa che dà alla casella un colore celeste.
Istanzio la classe con i due costruttori e aggiungo i controlli al Form, con una diversa proprietà left perchè non si sovrappongano:
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Dim cl As Object

        cl = New classe()
        Me.Controls.Add(cl)
        cl.left = 0

        cl = New classe("uh")
        Me.Controls.Add(cl)
        cl.left = 300
    End Sub
Funziona perfettamente: ottengo due etichette una di colore rosso a left=0 e una di color celeste a left=300. E finora, bene. Non ho usato alcuna funzione template...

Nessun commento:

Posta un commento