![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Несколько вопросов по реализации плэйера на основе Bass 2.0 [D7, WinME]
Кащей[БЦ] © (2004-02-21 13:18:00)Вот пишу тут свой плэйер , но возникла пару вопросов......
Как заставить работать кнопку плэй?(Никак непойму, при дабл клике на лист боксе играет, а какой обработчие запихнуть для плэя?).
Потом....Как организовать проигрывание файлов в порядке плэй листа?
Как при активизации другого файла через проигрываетель заставить заглохнуть предыдущий.....
Как организовать перемотку?
Как можно научить плэйер загружать не по одномк файлу, а целые директории?
Каким образом можно заставить приложени поддеживать SKIN'S (ну чтобы папочку создавало, а в неё можно было бмпхи класть и т.о менять внешний вид программы).
Заранее благодарен......
Кащей[БЦ] (2004-02-21 20:36:00) [1]Пасиб.
Юрий Ж. (2004-02-21 20:00:00) [2]Кстати где-то видел TBassPlayer - компонент-плеер использующий Bass.dll, там и пример есть...
Помоему был где-то на www.torry.net
Кащей[БЦ] (2004-02-21 19:18:00) [3]http://www.un4seen.com/files/bass20.zip
Юрий Ж. (2004-02-21 18:03:00) [4]Ну ты даешь!
Ответив на твои вопросы можно и свой плеер написать!
А вообще кинь ссылку на Bass 2.0 (искать ломает) может помогу.
Кстати добавление файлов при известной дарректории (это из FAQ):
Q-158: Как получить список файлов со всеми подкаталогами
procedure ScanDir(StartDir: string; Mask:string; List:TStrings);
var
SearchRec : TSearchRec;
begin
if Mask = '' then Mask := '*.*';
if StartDir[Length(StartDir)] <> '\' then StartDir := StartDir + '\';
if FindFirst(StartDir+Mask, faAnyFile, SearchRec) = 0 then
begin
repeat
Application.ProcessMessages;
if (SearchRec.Attr and faDirectory) <> faDirectory then
List.Add(StartDir + SearchRec.Name)
else if (SearchRec.Name <> '..') and (SearchRec.Name <> '.') then begin
List.Add(StartDir + SearchRec.Name + '\');
ScanDir(StartDir + SearchRec.Name + '\',Mask,List);
end;
until FindNext(SearchRec) <> 0;
FindClose(SearchRec);
end;
end;
Пример вызова. параметры
1. имя папки
2. маска, по умолчанию *.*
3. хранилище для резульатат, любой наследник от TString, например TStringList
procedure TForm1.Button1Click(Sender: TObject);
begin
ListBox1.Items.Clear;
ScanDir('c:', '*.mp3',ListBox1.Items);
Label1.Caption := IntToStr(ListBox1.Items.Count);
end;
Анатолий Подгорецкий (автор данного поиска)
anatoly@podgoretsky.com
Не нравится - напиши свой!
Кащей[БЦ] (2004-02-21 17:28:00) [5]Почитал, но там мягко говоря непонятно написано
KilkennyCat (2004-02-21 15:55:00) [6]ни фига себе, парочка вопросов....
может, имеет смысл почитать справку по Bass 2.0?