InicioInfo¿Sabes crear un explorador grafico en vb.net?

¿Sabes crear un explorador grafico en vb.net?

Info2/27/2011
Hola, bienvenidos a mi post, pero primero les dejare una nota.

>-- Si queres saber todo sobre programacion, software, etc. Seguime. ¡No lo dudes!

Continuamos con mas del post:

El Control ImageList ¿Sabes crear un explorador grafico en vb.net?

Este Objeto, Herramienta o Control ImageList, como quieras llamarlo Controla una Coleccion de Imagenes que suelen utilizar otros controles, como por ejemplo uhmmmmmm, el control ListView, El TreeView o el mismo ToolStrip.

Objetivos de Este Articulo:

Los Objetivos de este articulo son claros y consiste en que Aprendas a Utilizar Correctamente el Control ImageList y el Control TreeView, para ello diseñaremos una Aplicacion Windows Forms.

Ala Cual añadiremos otros controles aparte del ImageList que son:

• Una caja de texto TextBox al cual llamaremos: txtRuta
• Un Control TreeView al Cual llamaremos: tvwDirectorios
•Y Finalmente añadiremos tambien el control ListView al cual llamaremos: lvwArchivos

Al Control lvwArchivos le agregaremos 4 Columnas, que son:

•Nombre.
•Tamaño.
•Tipo.
•Modificado.

Detalle no Olvidar Agregar el Control ImageList, el cual es la Pieza Fundamental de este Articulo..jejeje solo te lo hacia recordar..

Asi Luce nuestra aplicacion en tiempo de diseño..

.net

Para Empezar a Codificar Crearemos un Controlador de Excepciones en el Evento Load del Formulario, el cual nos servira para Manejar las Excepciones que Ocurran en el Transcurso del desarrollo de la Aplicacion.

Dentro del Controlador de Errores declararemos variales a las cuales les haremos referencia con algunas Clases del Visual Studio 2010 (Tranquilamente puede ser tambien 2008 o 2005) como por ejemplo la Clase Environment, la funcion GetLogicalDrives, la funcion GetDirectories y muchas mas...tranquilo todo a paso lento..

Empezemos!!!



Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

' Manejo de Excepciones (errores)
Try
Dim Indice As Integer
'Environment: Proporciona información acerca del entorno y la plataforma actual, y la forma de manipularlos..
Dim Drives As String() = Environment.GetLogicalDrives()
'GetLogicalDrives: Matriz de cadena en la que cada elemento contiene el nombre de una unidad lógica.

' Drives: Devuelve una colección de sólo lectura de todos los nombres de unidad disponibles.
For Indice = 0 To Drives.Length - 1
Dim adicionaUnidad As New TreeNode
adicionaUnidad.Text = Drives(Indice)

' Nodes: Obtiene una colección de objetos que representa los nodos raíz del control
tvwDirectorios.Nodes.Add(adicionaUnidad)
agregarDirectorios(adicionaUnidad)
Next Indice
' Caso de error
Catch ex As Exception
End Try
End Sub


'Seguidamente Crearemos una Funcion la cual llamaremos nodoActual

Private Function nodoActual( ByVal node As TreeNode) As String
If node.Parent Is Nothing Then Return node.Text
Return System.IO.Path.Combine(NodoActual(node.Parent), node.Text)
End Function

'Luego de crear la funcion crearemos un metodo o procedimiento llamado agregardirectorios..
Private Sub agregarDirectorios(ByVal node As TreeNode)
' Manejo de Excepciones
Try
Dim Directorio As New System.IO.DirectoryInfo(NodoActual(node))
Dim DirectorioActual As System.IO.DirectoryInfo() = _
Directorio.GetDirectories()
Dim Indice As Integer
For Indice = 0 To DirectorioActual.Length - 1
Dim name As String = DirectorioActual(Indice).Name
If Not name.Equals("." And Not name.Equals(".." Then
node.Nodes.Add(New TreeNode(name))
End If
Next Indice
'Caso de error
Catch ex As Exception
End Try
End Sub


'Tambien crearemos un Procedimiento llamado agregarSUBdirectorios...

Private Sub agregarSUBdirectorios(ByVal node As TreeNode)
Dim Indice As Integer
For Indice = 0 To node.Nodes.Count - 1
agregarDirectorios(node.Nodes(Indice))
Next Indice
End Sub

'Despues Llenaremos esos Rollos de Archivos con el procedimiento llenarArchivos...

Private Sub llenarArchivos(ByVal AsignaRuta As String)
Dim Archivos(), NombreArchivo As String
Dim InfoArchivo As System.IO.FileInfo
Dim oListViewItem As ListViewItem
Archivos = System.IO.Directory.GetFiles(AsignaRuta)
' Limpiamos el contenido de ListView de esta manera
' nos aseguramos de actualizarlo
lvwArchivos.Items.Clear()
For Each NombreArchivo In Archivos
InfoArchivo = New System.IO.FileInfo(NombreArchivo)
'Recuperamos y mostramos el nombre de archivo
oListViewItem = lvwArchivos.Items.Add(Microsoft.VisualBasic.Left _
(InfoArchivo.Name.ToString, Len(InfoArchivo.Name.ToString) - 4))
'Mostramos la longitud del archivo en Bytes
oListViewItem.SubItems.Add(InfoArchivo.Length.ToString & " Bytes"
' Mostramos la extensión (Tipo archivo)
oListViewItem.SubItems.Add(InfoArchivo.Extension)
' Mostrar la última fecha fr modificación del archivo
oListViewItem.SubItems.Add(InfoArchivo.LastAccessTime)
Next
txtRuta.Text = AsignaRuta
End Sub


' Tambien Usaremos un nuevo Evento llamado AfterExpand El cual Tiene Lugar a Ejecutarse cuando se Expande un Nodo.

Private Sub tvwDirectorios_AfterExpand(ByVal sender As Object, ByVal e As System.Windows.Forms.TreeViewEventArgs) Handles tvwDirectorios.AfterExpand

Dim nodeExpanding As TreeNode = CType(e.Node, TreeNode)
agregarSUBdirectorios(nodeExpanding)
End Sub

'Y para terminar este Articulo tambien haremos uso de otro evento llamado AfterSelect..

Private Sub tvwDirectorios_AfterSelect(ByVal sender As System.Object, ByVal e As System.Windows.Forms.TreeViewEventArgs)Handles tvwDirectorios.AfterSelect

' Manejo de Excepciones
Try
Dim NodoTemporal As New TreeNode
Dim RutaTemporal As String
Dim RetornoPosicion As Integer
Dim RutaCompleta As String
NodoTemporal = e.Node.Parent
Do While Not IsNothing(NodoTemporal)
' buscamos la cadena "" en la variable NodoTemporal
RetornoPosicion = InStr(NodoTemporal.Text,"", CompareMethod.Text)
If RetornoPosicion = 0 Then RutaTemporal = NodoTemporal.Text + _
"" + RutaTemporal Else RutaTemporal = _
NodoTemporal.Text(+RutaTemporal)
NodoTemporal = NodoTemporal.Parent
Loop
' Llenamos los archivos segúng la ruta del archivo de texto.
llenarArchivos(RutaTemporal + e.Node.Text)
' interceptamos en caso de error...
Catch ex As Exception
End Try
End Sub



Nuestra Aplicacion en Tiempo de Ejecucion se verias mas o menos asi..

Grafico
Datos archivados del Taringa! original
13puntos
2,816visitas
5comentarios
Actividad nueva en Posteamelo
0puntos
0visitas
0comentarios
Dar puntos:

Posts Relacionados

Dejá tu comentario

0/2000
5 Comentarios archivados
Del Taringa! original
b@bajosega9/30/2011+0-0
problema resuelto , donde aparecen las caritas va un paréntesis .. gracias te dejo 10 !
b@bajosega9/30/2011+0-0
copie tal cual y no me lista los dirctorios
T@Tenenchito2/27/2011+1-0
tiene sus errores pero funciona bien para que vallan dandose una idea del concepto
x@xXRazorXx2/27/2011+0-0

bombom
d@doblefoul32/27/2011+0-0
Thank you for the Info!!!

Autor del Post

x
xenowort🇦🇷
Usuario
Puntos0
Posts41
Ver perfil →
PosteameloArchivo Histórico de Taringa! (2004-2017). Preservando la inteligencia colectiva de la internet hispanohablante.

CONTACTO

18 de Septiembre 455, Casilla 52

Chillán, Región de Ñuble, Chile

Solo correo postal

© 2026 Posteamelo.com. No afiliado con Taringa! ni sus sucesores.

Contenido preservado con fines históricos y culturales.