L'esempio seguente, utilizza alcuni dei controlli descritti nelle sessioni precedenti.
Creiamo una nuova UserForm come illustrato in figura e definiamo le proprietà degli
oggetti appena creati come riportato in tabella.
|
|
 |
|
|
Name |
Caption |
TabIndex |
FrmOggetti |
Prova Oggetti |
|
CboUno |
|
0 |
LstUno |
|
1 |
LstDue |
|
2 |
CmdAggiungi |
Aggiungi >> |
3 |
CmdRimuovi |
<<Rimuovi |
4 |
CmdCancella |
Cancella Tutto |
5 |
CmdEsci |
Esci |
6 |
ChkDisabilita |
Disabilita spostamenti |
7 |
|
|
*La proprietà TabIndex è utile per spostare velocemente il cursore da un
oggetto ad un altro usando il tasto Tabulatore (Tab). Il numero indica
l'ordine di spostamento.
|
|
Di seguito sono riportate le routine da inserire nel modulo di codice associato
alla UserForm "FrmOggetti".
|
|
La Routine è associata alla casella combinata "CboUno".
Quando la casella perde la selezione, la stringa di caratteri
appena digitati viene inserita nel menù a discesa della casella combinata
e nella casella di riepilogo "LstUno".
|
|
Private Sub CboUno_Exit(ByVal Cancel As MSForms.ReturnBoolean)
CboUno.AddItem CboUno.Text
LstUno.AddItem CboUno.Text
CboUno.Text = ""
End Sub
|
Con un Click del mouse sul pulsante "CmdAggiungi", ogni elemento
della casella di riepilogo "LstUno" viene valutato.
Se la voce è selezionata, l'elemento passa da "LstUno" a "LstDue".
|
|
Private Sub CmdAggiungi_Click()
Dim i As Integer
For i = 0 To CboUno.ListCount - 1
If LstUno.Selected(i) = True Then
LstDue.AddItem LstUno.List(i)
LstUno.RemoveItem i
LstUno.Selected(i) = False
End If
Next
End Sub
|
Con un Click del mouse sul pulsante "CmdRimuovi", ogni elemento
della casella di riepilogo "LstDue" viene valutato.
Se la voce è selezionata, l'elemento passa da "LstDue" a "LstUno".
|
|
Private Sub CmdRimuovi_Click()
Dim i As Integer
For i = 0 To LstDue.ListCount - 1
If LstDue.Selected(i) = True Then
LstUno.AddItem LstDue.List(i)
LstDue.RemoveItem i
LstDue.Selected(i) = False
End If
Next
End Sub
|
Con un Click del mouse sul pulsante "CmdCancella",
vengono cancellate tutte le voci presenti in "CboUno", "LstUno" e "LstDue".
|
|
Private Sub CmdCancella_Click()
CboUno.Clear
LstUno.Clear
LstDue.Clear
End Sub
|
Quando viene selezionata la casella di controllo "ChkDisabilita", vengono disabilitati
i pulsanti "CmdAggiungi" e "CmdRimuovi".
|
|
Private Sub ChkDisabilita_Change()
If ChkDisabilita.Value = True Then
CmdAggiungi.Enabled = False
CmdRimuovi.Enabled = False
Else
CmdAggiungi.Enabled = True
CmdRimuovi.Enabled = True
End If
End Sub
|
Con un Click del mouse sul pulsante "CmdEsci", viene scarica la finestra.
|
|
Private Sub CmdEsci_Click()
Unload Me
End Sub
|
|
Utilizzare la Form è molto semplice; inserisci una stringa di caratteri
nella casella combinata "CboUno" e prova ad usare i comandi che hai appena
creato, quindi valuta attentamente il codice Basic associato.
|
Video Corso sulla lezione |
marius44(M.A.) - alfrimpa(A.I.) - albatros54(G.A.) © 2016
|