
- •Содержание
- •Введение
- •1. Цели и задачи курсовой работы
- •2. Задание на курсовую работу
- •2.1. Тематика курсовых работ
- •2.2. Условие задания на курсовую работу
- •2.3. Варианты заданий на курсовую работу
- •1.Теоретическая часть.
- •3.1.3. Введение
- •3.1.4. Техническое задание
- •3.1.5. Теоретическая часть
- •3.1.6. Практическая часть
- •3.1.7. Список используемой литературы
- •3.2. Вспомогательный материал
- •3.2.1. Перечень разделов, подлежащих изучению
- •1.Теоретическая часть.
- •5. Общие требования к курсовой работе
- •6. Порядок защиты курсовой работы
- •Вопросы, выносимые на защиту курсовой работы:
- •7. Использование системы программирования Delphi для создания Windows-приложений
- •7.1. Интерфейс интегрированной среды разработки Delphi
- •7.2. Синтаксические правила языка Object Pascal
- •7.3. Создание и структура пользовательских приложений в среде Delphi
- •7.4. Структура модуля (*.Pas)
- •7.5. Создание формы и написание откликов на события
- •1) Компоновка формы и задание свойств компонентов
- •2) Написание отклика на событие
- •7.6. Компиляция и исполнение программы
- •7.7. Ввод и вывод данных. Функции преобразования типов данных
- •8 Литература Основная литература
- •Дополнительная литература
- •Приложение 1
- •Курсовая работа
- •Приложение 2
- •На курсовую работу
- •Приложение 3
Приложение 3
Образец оформления блок-схемы алгоритма и
листинга процедуры
Листинг 2.2
Процедура TForm1.N4Click
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, ExtCtrls, MPlayer, ComCtrls,
MMSYSTEM, FileCtrl, Menus;
type
TForm1 = class(TForm)
// кнопки
SpeedButton1: TSpeedButton; // Предыдущая композиция
SpeedButton2: TSpeedButton; // Воспроизведение/Стоп
SpeedButton3: TSpeedButton; // Следующая композиция
SpeedButton4: TSpeedButton; // Выбор папки
ListBox1: TListBox; // Список песен(mp3 файлов)
MediaPlayer1: TMediaPlayer; // компонент медиа плеер
TrackBar1: TTrackBar; // регулятор громкости
Timer1: TTimer; //таймер
Label1: TLabel; //вывод названия текущего трека
Label2: TLabel; //вывод времени прошедшего с начала песни
Shape1: TShape;
ProgressBar1: TProgressBar;
MainMenu1: TMainMenu;
N1: TMenuItem;
N2: TMenuItem;
N3: TMenuItem;
N4: TMenuItem;
N5: TMenuItem;
N6: TMenuItem;
N7: TMenuItem;
N8: TMenuItem; // рамка вокруг кнопок
procedure FormCreate(Sender: TObject);
procedure ListBox1Click(Sender: TObject);
procedure SpeedButton2Click(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
procedure SpeedButton3Click(Sender: TObject);
procedure TrackBar1Change(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
procedure SpeedButton4Click(Sender: TObject);
procedure Play; // воспроизведение
procedure PlayList(Path: string);
procedure N7Click(Sender: TObject);
procedure N6Click(Sender: TObject);
procedure N5Click(Sender: TObject);
procedure N4Click(Sender: TObject);
procedure N3Click(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure N8Click(Sender: TObject); // формирует список MP3 файлов
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
var
SoundPath: string[255];
min,sec: integer; // время воспроизведения
volume: LongWord;
// формирует список MP3 файлов
procedure TForm1.PlayList(Path: string);
var
lpBuf: PChar; // указатель на nul-terminated строку
sWinDir: string[128]; // обычная Паскаль строка
SearchRec: TSearchRec; //структура SearchRec содержит информацию
// о файле, удовлетворяющем условию поиска
begin
ListBox1.Clear;
// сформировать список mp3 файлов
if FindFirst(Path + '*.mp3', faAnyFile, SearchRec) =0 then
begin
// в каталоге есть файл с расширением WAV
// добавим имя этого файла в список
ListBox1.Items.Add(SearchRec.Name);
// пока в каталоге есть другие файлы с расширением WAV
while (FindNext(SearchRec) = 0) do
ListBox1.Items.Add(SearchRec.Name);
end;
ListBox1.ItemIndex := 0;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
PlayList('');
ListBox1.ItemIndex := 0;
Label1.Caption:=ListBox1.Items[ListBox1.itemIndex];
TrackBar1.Position := 7;
volume := (TrackBar1.Position - TrackBar1.Max+1)* 6500;
volume := volume + (volume shl 16);
waveOutSetVolume(WAVE_MAPPER,volume); // уровень сигнала
end;
// щелчок на названии произведения
procedure TForm1.ListBox1Click(Sender: TObject);
begin
label2.Caption:='0:00';
progressbar1.Position:=0;
procedure TForm1.SpeedButton1Click(Sender: TObject);
begin
if ListBox1.ItemIndex > 0 then
begin
ListBox1.ItemIndex := ListBox1.ItemIndex - 1;
label2.Caption:='0:00';
progressbar1.Position:=0;
end;
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 := 'Стоп';
end;