Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Cargar imagen y el nombre en listview con imagelist VB.NET2010

39 views
Skip to first unread message

mael22kar

unread,
Jan 16, 2013, 5:35:45 AM1/16/13
to
� Hola ! Soy novato en esto de la programacion y estaba queriendo cargar
imagenes que se encuentren en distintas carpetas dentro de la carpeta mis
imagenes. que ya logre hacerlo. Lo que me esta complicando es que quiero cargar
debajo de cada imagen el nombre de la carpeta donde se encuentre dicha imagen.

paso el codigo:

Imports System.Drawing.Image
Imports System.IO ' para el m�todo GetDirectories de la clase Directoy
' Para la colecci�n de archivos devueltos por FileSystem.GetFiles
Imports System.Collections.ObjectModel
'Para las api
Imports System.Runtime.InteropServices

Public Class Form1
Dim petterns() As String = {"*.jpg"}

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

Dim pistas As String = "D:musica Organizada"

buscar(pistas)
ListView1.Alignment = ListViewAlignment.Left
ImageList1.ImageSize = New Size(200, 200)


For j As Integer = 0 To Me.ImageList1.Images.Count - 1

Dim item As New ListViewItem()
item.ImageIndex = j

ListView1.Items.Add(item)

Next

If ListView1.Items.Count > 0 Then
ListView1.Items(0).Selected = True

End If

End Sub


' funci�n recursiva para los directorios
Private Sub buscar(ByVal sPath As String)

' obtener todos los subdirectorios en una matriz de string
Dim carpetas() As String = Directory.GetDirectories(sPath)

' recorrer el array
For Each dir As String In carpetas
Try
' buscar de nuevo
buscar(dir)

listar_archivos(dir, ImageList1)


Catch ex As UnauthorizedAccessException
Debug.Print(ex.Message.ToString)
Catch ex1 As Exception
Debug.Print(ex1.Message.ToString)
End Try
Next
End Sub
Private Sub listar_archivos( _
ByVal sPath As String, _
ByVal Ilist As ImageList, Optional ByRef ErrInfo As String = "")
Try

' colecci�n para GetFiles
Dim Collections_Files As ReadOnlyCollection(Of String)
' Obtener todos ficheros ( un solo nivel de dir.)
Collections_Files = My.Computer.FileSystem.GetFiles( _
sPath, _
FileIO.SearchOption.SearchTopLevelOnly, _
petterns)
' agregar a la lista las rutas


For Each archivo As String In Collections_Files
Ilist.Images.Add(Image.FromFile(archivo))
ListView1.LargeImageList = Ilist
'codigo para obtener el nombre de la carpeta donde se encuentra la imagen
Dim l As New ListViewItem(Strings.Split(archivo, ""c)(2))
l.Tag = Strings.Split(archivo, ""c)
' ListView1.Items.Add(l)

Next

Catch ex As Exception
End Try

End Sub


End Class
0 new messages