Il seguente è un esempio preso da MSDM che provvede via codice alla creazione completa di una ToolBar. L'esempio l'ho testato ed è funzionante.
Inserisci il componente Microsoft Windows Common Controls 6.0; seleziona e trascina sulla Form il controllo Toolbar; seleziona il Controllo ComboBox e trascinalo sulla barra vuota della Toolbar; seleziona e trascina sulla Form il Controllo ImmageList. Inserisci due Bmp (16x16) Save1 ed Open1 nella cartella del tuo progetto.
codice:
Private Sub Form_Load()
' Crea una variabile oggetto per ImageList:
Dim imgX As ListImage
' Carica immagini nel controllo ImageList.
Set imgX = ImageList1.ListImages. _
Add(, "apri", LoadPicture(App.Path & "\open1.bmp"))
Set imgX = ImageList1.ListImages. _
Add(, "salva", LoadPicture(App.Path & "\Save1.bmp"))
Toolbar1.ImageList = ImageList1
' Crea una variabile oggetto per Toolbar:
Dim btnX As Button
' Aggiunge oggetti Button a un insieme Buttons utilizzando il
' metodo Add. Dopo aver creato ciascun pulsante, imposta le
' proprietà Description e ToolTipText:
Toolbar1.Buttons.Add , , , tbrSeparator
Set btnX = Toolbar1.Buttons.Add(, "apri", , tbrDefault, "apri")
btnX.ToolTipText = "Apri file"
btnX.Description = btnX.ToolTipText
Set btnX = Toolbar1.Buttons.Add(, "salva", , tbrDefault, "salva")
btnX.ToolTipText = "Salva file"
btnX.Description = btnX.ToolTipText
Set btnX = Toolbar1.Buttons.Add(, , , tbrSeparator)
' Il pulsante successivo ha stile PlaceHolder. Su questo
' pulsante verrà collocato un controllo ComboBox:
Set btnX = Toolbar1.Buttons.Add(, "combinata1", , tbrPlaceholder)
' Larghezza del segnaposto sufficiente per la casella combinata:
btnX.Width = 1500
' Visualizza il form per continuare a configurare il controllo ComboBox:
Show
' Configura il controllo ComboBox nella stessa posizione dell'oggetto
' Button con stile PlaceHolder (chiave = "combinata1").
With Combo1
.Width = Toolbar1.Buttons("combinata1").Width
.Top = Toolbar1.Buttons("combinata1").Top
.Left = Toolbar1.Buttons("combinata1").Left
' Aggiunge i colori per il testo:
.AddItem "Nero"
.AddItem "Blu"
.AddItem "Rosso"
.ListIndex = 0
End With
End Sub
' -------------------------------------------------------
Private Sub Form_Resize()
' Configura il controllo ComboBox:
With Combo1
.Width = Toolbar1.Buttons("combinata1").Width
.Top = Toolbar1.Buttons("combinata1").Top
.Left = Toolbar1.Buttons("combinata1").Left
End With
End Sub
' -------------------------------------------------------
Private Sub toolbar1_ButtonClick(ByVal Button As Button)
' Utilizza la proprietà Key con l'istruzione SelectCase
'per specificare un'operazione:
Select Case Button.Key
' Apre il file:
Case Is = "apri"
MsgBox "Aggiungere qui il codice per aprire il file"
' Salva il file
Case Is = "salva"
MsgBox "Aggiungere qui il codice per salvare il file"
End Select
End Sub
' -------------------------------------------------------
Private Sub Combo1_Click()
' Modifica il colore di sfondo del form utilizzando il
' controllo ComboBox.
Select Case Combo1.ListIndex
Case 0
Form1.BackColor = vbBlack
Case 1
Form1.BackColor = vbBlue
Case 2
Form1.BackColor = vbRed
End Select
End Sub
Ciao e Buon lavoro.