|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
||||
|
||||
Запуск песни через ListBox
Можно ли запускать песни через 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
|
||||
|
||||
Help
Я думаю что 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
|
||||
|
||||
HELP
С п а с и б о !
Последний раз редактировалось ~~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
|
||||
|
||||
Всё понел
Спасибо Большое за Помощь
ICQ 353313843 |
#8
|
||||
|
||||
Пожалуйста
Чуть не забыл... Код:
procedure TForm1.ListView1DblClick(Sender : TObject); ... PlayFile(ListView.Items.Item[ListView1.ItemIndex].SubItems.Strings[2]); ... |