Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 11.12.2012, 16:31   #1
коршун
Новичок
Джуниор
 
Регистрация: 11.12.2012
Сообщений: 2
Восклицание блок-схемой к программе mp3player

все привет)очень нужна ваша помощь!нужно нарисовать блок-схему к программе''mp3player'' и блок схему к каждой процедуре)помогите)
Вложения
Тип файла: rar MP3_Player.rar (205.2 Кб, 6 просмотров)
коршун вне форума Ответить с цитированием
Старый 11.12.2012, 16:49   #2
коршун
Новичок
Джуниор
 
Регистрация: 11.12.2012
Сообщений: 2
По умолчанию

листинг программы
procedure TForm1.FormCreate(Sender: TObject);
begin
PlayList('');
ListBox1.ItemIndex := 0;
Label1.Caption:=ListBox1.Items[ListBox1.itemIndex];

TrackBar1.Position := 7;

// старшее слово переменной volume - правый канал,
// младшее - левый
volume := (TrackBar1.Position - TrackBar1.Max+1)* 6500;
volume := volume + (volume shl 16);
waveOutSetVolume(WAVE_MAPPER,volume ); // уровень сигнала
end;

// щелчок на названии произведения
procedure TForm1.ListBox1Click(Sender: TObject);
begin
// вывести в поле метки Label1 имя выбранного файла
if not SpeedButton2.Down
then SpeedButton2.Down := True;
Label1.Caption:=ListBox1.Items[ListBox1.itemIndex];
Play;
end;

// щелчок на кнопке Воспроизведение
procedure TForm1.SpeedButton2Click(Sender: TObject);
begin
if SpeedButton2.Down then
// пользователь нажал кнопку
// начать воспроизведение
Play
else
// если кнопка Воспроизведение нажата,
// то повторное нажатие останавливает
// воспроизведение
begin
MediaPlayer1.Stop;
Timer1.Enabled := False;
SpeedButton2.Down := False;
SPeedButton2.Hint := 'Play';
end;
end;

// кнопка К предыдущей
procedure TForm1.SpeedButton1Click(Sender: TObject);
begin
if ListBox1.ItemIndex > 0 then
ListBox1.ItemIndex := ListBox1.ItemIndex - 1;
Play;
end;

// кнопка К следующей
procedure TForm1.SpeedButton3Click(Sender: TObject);
begin
if ListBox1.ItemIndex < ListBox1.Count then
ListBox1.ItemIndex := ListBox1.ItemIndex + 1;
Play;
end;

// пользователь изменил положение
// регулятора громкости
procedure TForm1.TrackBar1Change(Sender: TObject);
begin
volume := 6500* (TrackBar1.Max - TrackBar1.Position);
volume := volume + (volume shl 16);
waveOutSetVolume(WAVE_MAPPER,volume );
end;


// воспроизвести композицию,
// название которой выделено
// в списке ListBox1
procedure TForm1.Play;
begin
Timer1.Enabled := False;
Label1.Caption:=ListBox1.Items[ListBox1.itemIndex];
MediaPlayer1.FileName := SoundPath + ListBox1.Items[ListBox1.itemIndex];

try
Mediaplayer1.Open;
except
on EMCIDeviceError do
begin
ShowMessage('Ошибка обращения к файлу '+
ListBox1.Items[ListBox1.itemIndex]);
SpeedButton2.Down := False;
exit;
end;
end;
MediaPlayer1.Play;
min :=0;
sec :=0;
Timer1.Enabled := True;
SpeedButton2.Hint := 'Stop';
end;

// сигнал от таймера
procedure TForm1.Timer1Timer(Sender: TObject);
begin
// изменить счетчик времени
if sec < 59
then inc(sec)
else begin
sec :=0;
inc(min);
end;

// вывести время воспроизведения
Label2.Caption := IntToStr(min)+':';
if sec < 10
then Label2.Caption :=
Label2.Caption +'0'+ IntToStr(sec)
else Label2.Caption :=
Label2.Caption + IntToStr(sec);

// если воспроизведение текущей композиции
// не завершено
if MediaPlayer1.Position < MediaPlayer1.Length
then exit;

// воспроизведение текущей композиции
// закончено
Timer1.Enabled := False; // остановить таймер
MediaPlayer1.Stop; // остановить плеер

if ListBox1.ItemIndex < ListBox1.Count // список не исчерпан
then begin
ListBox1.ItemIndex := ListBox1.ItemIndex + 1;
Play;
end
end;

// Щелчок на кнопке Папка
// Выбрать папку, в которой находятся MP3 файлы
procedure TForm1.SpeedButton4Click(Sender: TObject);
var
Root: string; // корневой каталог
pwRoot : PWideChar;
Dir: string;
begin
Root := ''; // корневой каталог - папка Рабочий стол
GetMem(pwRoot, (Length(Root)+1) * 2);
pwRoot := StringToWideChar(Root,pwRoot,MAX_PA TH*2);
if not SelectDirectory('Выберите папку', pwRoot, Dir)
then Dir :=''
else Dir := Dir+'\';

// каталог, в котором находятся MP3 файлы выбран
SoundPath := Dir;
PlayList(SoundPath);
end;

procedure TForm1.Label1Click(Sender: TObject);
begin

end;

end.
коршун вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Поделитесь блок-схемой [Smarik] Помощь студентам 3 16.02.2021 19:44
Блок-схемой (циклы на СИ) DesignFootball.Ru Помощь студентам 2 01.11.2011 22:11
Задача с блок схемой. san23 Помощь студентам 0 08.11.2010 16:13
Помогите с блок-схемой GaJIbI4 Помощь студентам 3 05.05.2009 09:10
Помогите с блок-схемой 11twin11 Помощь студентам 2 24.02.2009 12:10