JavascriptProva

domenica 12 agosto 2012

Popolando un form di Labels per i turni di mattina, pomeriggio e notte.

Ecco il codice, compreso l'"evento test" che cambia colore a una label a scelta, per verificare che funzionino i riferimenti a una specifica label dell'array
Public Class Form1
    Dim lblMorning, lblAfternoon, lblNight As ArrayList

    Private Sub Form1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Click
        lblNight(13).backcolor = Color.Red
    End Sub

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        lblMorning = New ArrayList
        lblAfternoon = New ArrayList
        lblNight = New ArrayList
        Dim numero, vertSpace, horSpace As Integer
        numero = 20
        vertSpace = 2
        horSpace = 2
        popola(0, numero, vertSpace, horSpace, lblMorning)
        popola(1, numero, vertSpace, horSpace, lblAfternoon)
        popola(2, numero, vertSpace, horSpace, lblNight)
    End Sub
    Sub popola(ByVal ordine, ByVal numero, ByVal vertSpace, ByVal horSpace, ByVal lblArray)
        Dim etichetta As Label
        For n = 0 To numero
            etichetta = New Label
            With etichetta
                .BackColor = Color.White
                .BorderStyle = BorderStyle.FixedSingle
                .Left = (.Width + horSpace) * ordine
                .Top = (etichetta.Height + vertSpace) * (n Mod numero)
            End With
            Me.Controls.Add(etichetta)
            lblArray.add(etichetta)
        Next

    End Sub
End Class
Il codice funziona bene, come previsto.
Ci ho aggiunto anche lo spazio orizzontale fra le diverse colonne.
Ogni colonna viene memorizzata in una matrice ArrayList, in modo da mantenerne i riferimenti.

Nessun commento:

Posta un commento