JavascriptProva

domenica 18 agosto 2013

Orientamento della griglia, sempre come parametro opzionale

Ed ecco riaggiunto l'orientamento della griglia:
Per mezzo di questo modulo dichiarato nella libreria:
Public Module Costanti
    Public Const HGrid As Integer = 1
    Public Const VGrid As Integer = 0
End Module
definisco (per puro artifizio mnemonico) due costanti che mi danno l'orientamento della griglia, HGrid e VGrid.

Quindi rendo l'orientamento parametro opzionale con HGrid come valore di default (griglia orizzontale).
    Sub New(ByRef frm As Form, ByVal nCaselle As Integer, ByVal rowLength As Integer, Optional ByVal Orientamento As Integer = HGrid, Optional ByVal XCoord As Integer = 0, Optional ByVal YCoord As Integer = 0, Optional ByVal HSpace As Integer = 0, Optional ByVal VSpace As Integer = 0)
        For n As Integer = 0 To nCaselle - 1
            Dim casella As T = New T
            If Orientamento = HGrid Then
                casella.Left = XCoord + (HSpace + casella.Width) * (n Mod rowLength)
                casella.Top = YCoord + (VSpace + casella.Height) * (n \ rowLength)
            ElseIf Orientamento = VGrid Then
                casella.Left = XCoord + (HSpace + casella.Width) * (n \ rowLength)
                casella.Top = YCoord + (VSpace + casella.Height) * (n Mod rowLength)
            End If
            Add(casella)
            frm.Controls.Add(casella)
        Next
    End Sub
End Class
E il programma chiamante può tacere quel parametro o specificare VGrid, ottenendo rispettivamente una griglia a disposizione orizzontale o verticale.
Public Class Form1

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Dim miaGriglia = New Griglia(Of Controllo)(Me, 10, 4, VGrid)
        For n As Integer = 0 To miaGriglia.Count - 1
            miaGriglia(n).text = n

        Next
    End Sub
End Class
Class Controllo
    Inherits TextBox
End Class
Ecco: questo codice specifica una griglia verticale.
Funziona.

Nessun commento:

Posta un commento