![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
||||
|
||||
|
Можно ли запускать песни через List Box чтобы в нем отражался не путь а название песни и после нажатие на List Box эта песня загружалась в MediaPlayer.(Пишите подробна Плиз)Спасибо!
|
|
#2
|
||||
|
||||
|
Можно пойти двумя путями
1) В одном списке отображать заголовки(теги) песен, и создать второй список(невидимый), где в том же порядке будут пути к файлам. Тогда код будет типа такого: Код:
procedure TListBox1.OnDblClick(Sender : TObject);
begin
if (ListBox1.ItemIndex>=0)and(ListBox1.ItemIndex<ListBox1.Items.Count) then
begin
StopPlaying;//остановить проигрывание
SongIndex := ListBox1.ItemIndex;//текущий номер песни
PlayFile(ListBox2.Items.Strings[ListBox1.ItemIndex]);//начать играть
end;
end;2) Делать все через ListView. Тогда в первой колонке будут номера песен, во второй-заголовки, в третьей-путь, в четвертой-время. Третью колонку надо сделать шириной 0. Тут надо не забывать, что перед тем, как записать данные в колонки 2-4, надо их создать. |
|
#3
|
||||
|
||||
|
Спасибо за помощь щас Попробую!
![]() |
|
#4
|
||||
|
||||
Я думаю что StopPlaying это Procedure Остановки MediaPlayer;SongIndex это Var Integer; PlayFile что? Как правильно загрузить в List Box путь к файлу .ОбрСоб. Begin if Form1.OpenDialog1.Execute then begin Form1.OpenDialog1.FileName := Form1.MediaPlayer1.FileName; Form1.MediaPlayer1.Play; end; |
|
#5
|
||||
|
||||
|
С п а с и б о !
Последний раз редактировалось ~~LR~~AlexXx, 26.05.2008 в 16:09. |
|
#6
|
||||
|
||||
|
StopPlaying - процедура, где надо остановить плеер(может называться как угодно)
Код:
procedure TForm1.StopPlaying; begin MediaPlayer1.Stop; MediaPlayer1.Close; MediaPlayer.FileName := '';//может както еще..не помню end; Код:
procedure TForm1.PlayFile(FilePath : string);
begin
if FileExists(FilePath) then
begin
MediaPlayer.FileName := '';
MediaPlayer1.Open;
MediaPlayer1.Play;
end;
end;Код:
procedure TForm1.AddFilesButClick(Sender: TObject);
var i : integer;
It : TListItem;
Strs : TStrings;
begin
if OpenDialog1.Execute then
begin
Strs := OpenDialog1.Files;
for i :=0 to OpenDialog1.Files.Count-1 do
begin
Application.ProcessMessages;
it := ListView1.Items.Add;
it.Caption:=IntToStr(ListView.Items.Count);//номер в списке
it.SubItems.Add(GetTag(Strs[i]));//GetTag-процедура чтения тегов
it.SubItems.Add(Strs[i]);//путь к файлу
it.SubItems.Add(GetTime(Strs[i]));//GetTime-процедура чтения длительности
end;
end;
end; |
|
#7
|
||||
|
||||
|
Спасибо Большое за Помощь
![]() |
|
#8
|
||||
|
||||
|
Пожалуйста
Чуть не забыл... Код:
procedure TForm1.ListView1DblClick(Sender : TObject); ... PlayFile(ListView.Items.Item[ListView1.ItemIndex].SubItems.Strings[2]); ... |