Текущий архив: 2004.06.20;
Скачать: CL | DM;
Вниз
MediaPlayer и Timer Найти похожие ветки
← →
Настенька (2004-06-03 07:58) [0]подскажите, у меня есть листвокс со списком песен. с помощью mediaplayer
я их проигрываю одну за другой вот код:
if mediaplayer1.position = mediaplayer1.length then begin
mediaplayer1.stop;
mediaplayer1.close;
mediaplayer1.filename:="D:\"+listbox1.items.strings[1+listbox1.itemindex]+".mp3";
mediaplayer1.open;
mediaplayer1.play;
if (ListBox1.ItemIndex=listbox1.Count-1) then listbox1.ItemIndex:=0
else listbox1.ItemIndex:=listbox1.ItemIndex+1;
последние 3 строки работают некорректно, если играет последняя
запись, то он должен автоматически переместиться на 1 строку, а он этого не делает? что не так подскажите!!!
← →
KSergey © (2004-06-03 08:05) [1]Этот код по таймеру чтоли срабатывает? А нельзя ли весь этот фрагмент, а то бегин есть, а где от него енд - не понятно.
А вообще-то -есть такая штука - отладчик, точки остановки и т.п. - модет просто посмотреть что же там происходит, а?
А, к стати: сначала след. из списка запускаем ([1+listbox1.itemindex]), а потом - проверяем а не пора ли сначала (if ... then listbox1.ItemIndex:=0
)... Эта, а может подумать? И поменять эти куски местами?
← →
Настенька (2004-06-03 16:23) [2]вот весь фрагмент на timer1timer
procedure TForm1.Timer6Timer(Sender: TObject);
var b:ttime;
begin
if mediaplayer1.position = mediaplayer1.length then begin
mediaplayer1.stop;
mediaplayer1.close;
mediaplayer1.filename:="D:\"+listbox1.items.strings[1+listbox1.itemindex]+".mp3";
mediaplayer1.open;
mediaplayer1.play;
end;
if (ListBox1.ItemIndex=listbox1.Count-1) then listbox1.ItemIndex:=0
else listbox1.ItemIndex:=listbox1.ItemIndex+1;
end;
end;
но когда на последнюю запись становится выскакивает ошибка
list index out of bounds
← →
Игорь Шевченко © (2004-06-03 16:38) [3]"D:\"+listbox1.items.strings[1+listbox1.itemindex]
1+ убери
Страницы: 1 вся ветка
Текущий архив: 2004.06.20;
Скачать: CL | DM;
Память: 0.44 MB
Время: 0.029 c