A ver si te sirve esto:
Necesitas:
1 LisBox
1 Label
1 Boton para aplicarlo
En el boton:
ListBox.DeleteItem("ListBox_Container", LB_ALLITEMS);--Eliminas todo lo existente en la listbox
--Utiliza esta opcion para que agregue todos los ficheros encontrados al listbox:
sMP3_Find_Path = File.Find(Shell.GetFolder(SHF_MYMUSIC), ".mp3", true, true, nil, nil);--Ficheros a buscar, creas un filtro para que no añadan ficheros no deseados como por ejemplo .txt
--Utiliza esta opcion para que agregue todos los ficheros seleccionados por el usuario al listbox, si quieres que seleccione solo uno en el parametro TRUE dale a FALSE:
sMP3_Find_Path = Dialog.FileBrowse(true, "Titulo de tu dialogo", Shell.GetFolder(SHF_MYMUSIC), "(*.mp3)|*.mp3|", "", "", true, false)
nFounds = 1;--Declara nFounds para utilizarla mas tarde, esto contara los ficheros añadidos al listbox, tambien podria ser un ListBox.GetCount() pero el conteo no seria en tiempo real
for index, Files in pairs (sMP3_Find_Path) do--Haces el bucle
--Haces un Split (divides el Path en secciones)
sDrive = String.SplitPath(Files).Drive;--Disco Duro
sFolder = String.SplitPath(Files).Folder;--Folder contenedor de los ficheros
sFileName = String.SplitPath(Files).Filename;--Nombre del fichero
sExtension = String.SplitPath(Files).Extension;--Extension del fichero
--Puedes crear un filtro para agregar todas tus canciones para que se visualicen perfectamente y no queden "comidas"
if (String.Length(sFileName) > 7) then
sFileName = String.Mid(sFileName , 1, 7);
end
--Filtro
Label.SetText("Available_Media", "Media disponible: "..string.format("%04d", nFounds).." archivos");--Colocas la variable nFounds, el conteo sera en tiempo real.
ListBox.AddItem("ListBox_Container", string.format("%04d", index).." | "..sFileName, Files);
nFounds = nFounds + 1;--Auto incrementas la variable nFounds
Application.Sleep(1)--Duermes la aplicacion por si son demasiados ficheros, esto hara que tu aplicacion no deje de responder
end
Si tienes dudas aqui andaremos un rato
Editado, causa: Correccion de codigo.
Saludos.