In questo esempio vogliamo usare i quattro componenti della casella degli strumenti per realizzare una applicazione che mi permetta di sfogliare i file dal nostro computer e, in caso siano immagini, visualizzarli in una picture:
Trasciniamo a tal scopo i controlli nel form fino a fargli assumere l’aspetto di sopra
Il componente DriveListBox ci permette di sfogliare fra i drive del nostro computer, DirListBox fra le cartelle (directory) di tali drive, FileListBox fra i file delle cartelle. Se cambiamo il drive,dobbiamo dire al programma di aggiornare il contenuto delle cartelle e conseguentemente dei file. Per far ciò usiamo l’evento change:
Private Sub Drive1_Change()
On Error GoTo fine
Dir1.Path = Drive1.Drive
Exit Sub
fine:
MsgBox Err.Description
End Sub |
Con questa istruzione cambio la radice pricipale ; Dir1.Path mi restituisce tutte le cartelle del nuovo drive (ad esempio D:) |
Ho però inserito anche delle nuove istruzioni per gestire un eventuale errore |
On Error GoTo fine
…….
Exit Sub
fine:
MsgBox Err.DescriptionSe il drive non è pronto, per esempio il disco “a:” non è inserito nel Floppy VB mi restituirebbe un errore è il programma sparirebbe dal video del nostro PC con grossa delusione da parte dell’utente. L’istruzione on error intercetta invece l’errore e se c’è me ne dà anche la descrizione con la funzione Msgbox (messaggio) e err.description (valore). Ora dobbiamo però anche visualizzare i file della directory: |
Private Sub Dir1_Change()
File1.Path = Dir1.Path
End Sub |
Per completare l’esempio, voglio visualizzare i file di tipo immagine (attenzione, la Picture di VB supporta solo i file di estensione *.gif, *.bmp,*.jpg,*.wmf). Per far ciò mi basta l’evento click del FileListBox: |
Private Sub File1_Click()
On Error GoTo fine
Picture1.Picture = LoadPicture(Dir1.Path & “” & File1.FileName)Exit Sub
fine:
MsgBox Err.DescriptionEnd Sub |
|
La funzione LoadPicture (percorsoimmagine) carica nella picture l’immagine del percorso specificato: abbiamo dovuto concatenare la stringa con “” perchè Dir1.Path restituisce ad esempio “C:immagini”, File1.FileName restituisce “img.jpg”. Scarica qui l’esempio esplora.zip