1
Programmazione / Re: [RISOLTO] Creazione array di controlli form e modifica delle proprietà
« il: 09 Settembre 2012, 16:11:27 »
Buon pomeriggio a tutti, dopo i preziosi consigli di ieri sono arrivato, speriamo, alla conclusione del codice del quale avevo bisogno.
Spero questo esempio possa servire a tutti:
Dim Apidb As New Connection
Dim query As String
Dim risultato As Result
Dim i As Integer
Dim raccnomi, raccdescr, raccfoto As New String[]
Dim racclbl, racctxtarea, raccpic As New Object[]
Dim cnt As Control
Connections["Apidb"].open
If Apidb.Error Then
Message("Impossibile trovare il db. Importare un db funzionante")
Else
query = "SELECT nome, sigla, descrizione, foto FROM nome_apiari"
risultato = Connections["Apidb"].Exec(query)
If risultato.Available Then
For Each risultato
raccnomi.Add(risultato!nome & " " & "(" & risultato!sigla & ")")
raccdescr.Add(risultato!descrizione)
raccfoto.Add(risultato!foto)
Next
Connections["Apidb"].Close
For i = 0 To raccnomi.Max
For Each cnt In Me.Controls
Select Case Object.Type(cnt)
Case "Label"
racclbl.Add(cnt)
With racclbl
.enabled = True
.transparent = True
.foreground = &HFFFFBF&
.text = raccnomi(i)
.alignment = 3
.visible = True
End With
Case "TextArea"
racctxtarea.Add(cnt)
With racctxtarea
.enabled = True
.foreground = &HFFFFBF&
.text = raccdescr(i)
.alignment = 3
.visible = True
.wrap = True
End With
Case "PictureBox"
raccpic.Add(cnt)
With raccpic
.enabled = True
.Picture = Picture.Load(raccfoto(i))
.stretch = True
.visible = True
End With
End Select
Next
Next
Inc i
Else
Message("Nessun Apiario è presente nel db")
Endif
Endif
PS: vi ricordo che l'indice i deve andar messo tra parentesi quadre e non tonde.
Spero questo esempio possa servire a tutti:
Dim Apidb As New Connection
Dim query As String
Dim risultato As Result
Dim i As Integer
Dim raccnomi, raccdescr, raccfoto As New String[]
Dim racclbl, racctxtarea, raccpic As New Object[]
Dim cnt As Control
Connections["Apidb"].open
If Apidb.Error Then
Message("Impossibile trovare il db. Importare un db funzionante")
Else
query = "SELECT nome, sigla, descrizione, foto FROM nome_apiari"
risultato = Connections["Apidb"].Exec(query)
If risultato.Available Then
For Each risultato
raccnomi.Add(risultato!nome & " " & "(" & risultato!sigla & ")")
raccdescr.Add(risultato!descrizione)
raccfoto.Add(risultato!foto)
Next
Connections["Apidb"].Close
For i = 0 To raccnomi.Max
For Each cnt In Me.Controls
Select Case Object.Type(cnt)
Case "Label"
racclbl.Add(cnt)
With racclbl
.enabled = True
.transparent = True
.foreground = &HFFFFBF&
.text = raccnomi(i)
.alignment = 3
.visible = True
End With
Case "TextArea"
racctxtarea.Add(cnt)
With racctxtarea
.enabled = True
.foreground = &HFFFFBF&
.text = raccdescr(i)
.alignment = 3
.visible = True
.wrap = True
End With
Case "PictureBox"
raccpic.Add(cnt)
With raccpic
.enabled = True
.Picture = Picture.Load(raccfoto(i))
.stretch = True
.visible = True
End With
End Select
Next
Next
Inc i
Else
Message("Nessun Apiario è presente nel db")
Endif
Endif
PS: vi ricordo che l'indice i deve andar messo tra parentesi quadre e non tonde.