Sugestões...

Delphi

20/09/2003

Olá,

Estou desenvonveldo um programa de áudio semelhante ao Winamp.
Coloquei um ListBox que armazena as músicas da lista, porém, nela
adicionei apenas o nome da música em si... Gostaria de sugestões de onde
e como poderia guardar as informações de cada música (diretório, tamanho, etc...)
mantendo-as em segundo plano.

Grato,

:roll:


Atomix

Atomix

Curtidas 0

Respostas

Cebikyn

Cebikyn

20/09/2003

Use o mesmo sistema do Winamp, abra uma lista do Winamp (o formato antigo - *.m3u) no bloco de notas para ter uma idéia de como é feito. Qq coisa deixe uma msg...


GOSTEI 0
Atomix

Atomix

20/09/2003

mas como eu armazeno estas informações. por ex. o winamp cria sempre uma lista q armazena as informações das músicas?

:wink:


GOSTEI 0
Cebikyn

Cebikyn

20/09/2003

O Winamp cria uma lista na memória quando ele inicia, depois ele edita a lista sempre que alguma música é adicionada ou removida, mas essas informações só são salvas quando vc fecha o aplicativo ou seleciona ´Save list as...´.

Mas o que eu quis sugerir é que vc use um tipo de arquivo parecido, que armazena as informações em campos separados, e quando o programa lê esse arquivo, apenas o campo contendo o nome da música é mostrado e as demais infomações ficam na memória.

Por ex.:
O usuário acrescenta uma música (C:\Musica\Arq.mp3), o programa lê o nome da música e passa para o ListBox, daí o resto das informações é passado para uma linha de uma variável do tipo TStringList:

StringList.Add(´Nome da Música|C:\Musica\Arq.mp3|2000Kb|256Kbps´);

Quando o usuário selecionar a música no ListBox, o programa procura a linha correspondente na variável e lê as informações necessárias. Quando o programa fecha, ele salva o TStringList ou num arquivo que vc especifica ou num arquivo especificado pelo usuário. Depois quando o programa reiniciar, o TStringList carrega o arquivo e lê os nomes das músicas e passa para o ListBox (as outras informações vc lê qnd for necessário).


GOSTEI 0
Henry

Henry

20/09/2003

tem o codigo pra isso(ponto de interrogação)


GOSTEI 0
POSTAR