JavascriptProva

mercoledì 12 settembre 2012

Uso della funzione che somma gli elementi di una matrice

Ed ecco come ho impiegato la mia funzione che somma gli elementi di un array:
Public Class Form1
    Dim mese As Integer = 9
    Dim anno As Integer = 2012
    Dim larghezze As Integer() = {300, 100}
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        disponiCaselle(larghezze(0), SommaElementiDiArray(larghezze, 0))
        disponiCaselle(larghezze(1), SommaElementiDiArray(larghezze, 1))
    End Sub
    Sub disponiCaselle(ByVal larghezza As Integer, ByVal sinistra As Integer)
        Dim numero As Integer
        numero = DateTime.DaysInMonth(anno, mese)
        Dim casella As Label
        For n = 0 To numero - 1
            casella = New Label
            With casella
                .BorderStyle = BorderStyle.FixedSingle
                .BackColor = Color.White
                .Width = larghezza
                .Left = sinistra
                .Top = .Height * (n Mod numero)
                .Text = GiornoDellaSettimana(CDate(n + 1 & "/" & mese & "/" & anno))
            End With
            Me.Controls.Add(casella)
        Next
    End Sub
End Class
Ho isolato il codice che dispone le caselle in colonna nella subroutine disponicaselle, in modo da poterla richiamare più volte.
Quindi do alla routine due parametri, uno per la larghezza della colonna e uno per la posizione sinistra della colonna.
Ponendo in una matrice le larghezze predeterminate per ciascuna colonna, dalla prima all'ultima, faccio in modo che il primo parametro della subroutine sia il numero dell'elemento della matrice che contiene la larghezza della colonna, e il secondo parametro sia la somma delle larghezze delle colonne precedenti.
Funziona.
In questo modo posso predeterminare le larghezze delle varie colonne semplicemente modificando i valori della matrice larghezze, senza impazzire più di tanto.

Nessun commento:

Posta un commento