Показать сообщение отдельно
  #10  
Старый 27.02.2011, 01:22
Аватар для Bargest
Bargest Bargest вне форума
Профессионал
 
Регистрация: 19.10.2010
Адрес: Москва
Сообщения: 2,390
Версия Delphi: XE3/VS12/FASM
Репутация: 14665
По умолчанию

Цитата:
procedure TForm7.Timer1Timer(Sender: TObject);
begin
if b>10 then MediaPlayer1.stop;
Inc (b);
mediaplayer1.FileName:=S[b];
MediaPlayer1.Open;
MediaPlayer1.Play;
end;
Пройдемся пошагово. Предположим, у нас уже конец и b=10.
b>10? нет.
inc(b) - b=11
mediaplayer1.FileName:=S[11];

Я так понимаю, что в массиве S всего 10 элементов?

если я верно все понял, то надо наоборот:
Код:
procedure TForm7.Timer1Timer(Sender: TObject);
begin
 inc(b);
 if b>10 then 
 begin
  MediaPlayer1.stop;
  Timer1.Enabled:=false;   // отключаем таймер чтобы больше не вызывалась эта процедура
  b:=0;                  // на всякий случай (т.е. на будущее)
 end
 else
 begin
  mediaplayer1.FileName:=S[b];
  MediaPlayer1.Open;
  MediaPlayer1.Play;
 end;
end;
__________________
jmp $ ; Happy End!
The Cake Is A Lie.
Ответить с цитированием