Una situación muy complicada se me presenta en mi VB6: estoy haciendo un reproductor de musica estilo itunes, y necesito que, a través de un commondialog se puedan ingresar numerosos items en un listview.
Mi codigo actual es el siguiente, que si bien se puede elegir mas de un archivo en el commondialog, solo permite añadir una entrada por vez, y tira error al elegir varios:
Código:
Con el filetitle y filename se agrega una entrada. Necesito que al seleccionar varios archivos se puedan crear varias entradas a traves de estos datos. Les agradeceria una respuesta!!!Private Sub añadirarchivosalabiblioteca_Click() 'Array dinámico de tipo String Dim Archivos() As String Dim i As Long, Flag As String 'Flags para el commondialo para que permita selección múltiple Flag = cdlOFNAllowMultiselect Or cdlOFNExplorer Or cdlOFNHideReadOnly With CommonDialog1 .DialogTitle = "Agregar archivos" .Filter = "Todos los archivos de música|*.mp3;*.wma;*.wav;*.asf|Archivos MP3 (.mp3)|*.mp3|Archivos Windows Media (.wma)|*.wma|Archivos WAVEForm (.wav)|*.wav|Archivos Advanced System Format (.asf)|*.asf" .InitDir = App.Path .Flags = Flag .ShowOpen 'Guardamos en el array dinámico los archivos con la función Split _ indicandole como separador el Chr(0) Archivos = Split(CommonDialog1.FileName, Chr(0)) 'Recorremos el Array e imprimimos el resultado en el formulario For i = 0 To UBound(Archivos) Me.Print Archivos(i) Next i 'Eliminamos el array "Archivos" Erase Archivos If .FileTitle <> "" Then Dim subelemento As ListItem Set subelemento = principal.ListView1.ListItems.Add(, , .FileTitle) subelemento.SubItems(7) = .FileName subelemento.SubItems(9) = .FileTitle End If End With End Sub
Saludos