ESERCIZIO Utilizzare Object Browser  : Object Browser puo' essere molto utile per copiare la sintassi esatta di un comando e verificare i System e  tutte le categorie di progetto coninvolte. Proviamo ad utilizzarlo per scoprire funzioni che ci erano sconosciute. Ad esempio vogliamo dedurre se una particolare Directory è esistente oppure vogliamo sfruttarlo per conoscere la data dell' ultimo accesso ad una particolare Directory o, infine, per conoscere le sottodirectory di una particolare Directory principale

 

 

CENNI TEORICI:

 

L' Object Browser è realmente un completo riassunto di funzioni, metodi ed eventi presenti in Visual Studio. In particolare dall' Object Browser è possibile dedurre qualsiasi potenziale comando utilizzabile nell' Application in corso.

 

SUGGERIMENTI :

 

1. Trascinare sul form tre TextBox, tre Button ed un ListBox

 

2.Selezionare l' Object browser da View / Other Windows. Nell' IDE dovrebbe comparire la finestra mostrata in figura  A.0. Oltre ai sistemi in generale accessibili dal progetto è esplicitato l' insieme degli oggetti e delle funzioni presenti nell' Applcazione corrente.

 

 

 

2. Poichè il primo obiettivo è quello di conoscere una funzione connessa alla Directory, cliccchiamo sull' icona del binocolo (Find Symbol), posta nel toolbar dell' Object Browser  e digitiamo l' argomento di cui vogliamo conoscere  i dettagli.

 

 

 

3. Al clic su Find possiamo visualizzare  la voce Directory nel pannello di sinistra e la voce Exists su quello di destra. Inoltre, nella parte inferiore dela finestra, vengono fornite ulteriori informazioni sulla struttura logica e date informazioni sulla sintassi che lega Directory con Exists.

 

 

 

 

4. Inserire il seguente codice nell' ambito dell' evento click di Button1  :

 

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As _ System.EventArgs) Handles Button1.Click

        If Not Directory.Exists("C:\Utopia.doc") Then

            TextBox1.Text = "Directory non valida"

        End If

 End Sub

 

5. Poichè il secondo obiettivo è quello di conoscere la data dell' ultimo accesso ad una particolare  Directory, cliccchiamo ancora sull' icona del binocolo (Find Symbol) e digitiamo la voce GetLastAccessTime. Il Browser dovrebbe visualizzare tutte le informazioni relative a questo comando.

 

 

 

 

 

6. Inseriamo pertanto il seguente codice nell' ambito dell' evento click di Button2, desunto dalle informazioni forniteci dal Browser  :

 

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click

        TextBox2.Text = Directory.GetLastAccessTime("C:\Programmi")

End Sub

 

 

7. Poichè il terzo obiettivo è quello di conoscere i nomo di tutte le sotto-Directory presente in un particolare Directory, cliccchiamo ancora sull' icona del binocolo (Find Symbol) e digitiamo la voce DirectoryInfo. Il Browser dovrebbe visualizzare tutte le informazioni relative a questo argomento.

 

 

 

 

8.Inseriamo pertanto il seguente codice nell' ambito dell' evento click di Button3, desunto dalle informazioni forniteci dal Browser  :

 

 

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As _ System.EventArgs) Handles Button3.Click

     Dim informazioni As New DirectoryInfo("C:\")

     Dim Insieme As DirectoryInfo() = informazioni.GetDirectories()

     Dim Nome As DirectoryInfo

     For Each Nome In Insieme

         ListBox1.Items.Add(Nome)

     Next

End Sub

 

 

Proviamo a lanciare la procedura. Al clic sul Button1 (Cerca Dir) dovremmo constatare che TextBox1 restituisce un messaggio di Directory non trovate. Dovremmo inoltre leggere, al clic su Button2 (Ultimo Acc), che la Directory è stata interrogata l' ultima volta il 16/12/2002. Dovremmo infine leggere in ListBox1 l' elenco dei nomi presenti nella Directory C:!.       

 

 

 

NOTE SUL CODICE:

 

1) L' espressione seguente:

 

FileCopy(OpenFileDialog1.FileName, SaveFileDialog1.FileName

 

impartisce la seguente istruzione: copia il contenuto del file, la cui directory  è letta in OpenFileDialog1, in una directory il cui nome è letto in SaveFileDialog1

 

2) L' espressione seguente:

 

Shell("c:\windows\notepad.exe " & OpenFileDialog1.FileName, 1)

 

impartisce la seguente istruzione: lancia l' applicazione Note Pad e carica il file la cui directory  è letta in OpenFileDialog1