Бакалавр
Дипломные и курсовые на заказ

MP3 проигрыватель на языке высокого уровня C#

КурсоваяПомощь в написанииУзнать стоимостьмоей работы

SaveFileDialog1. ShowDialog (); — Диалоговое окно для сохранения плейлиста. Open. Filter = «Плейлист (*.pls)|*.pls|Текстовый документ (*.txt)|*.txt»; PlayListLB. Items. Remove (playListLB. SelectedItem); — Удаление из плейлиста. Wmp.controls.currentPosition = trackBar. Value; — Текущая позиция ползунка. If ((openFileDialog1. ShowDialog () == DialogResult. OK) && (openFileDialog1. FilterIndex… Читать ещё >

MP3 проигрыватель на языке высокого уровня C# (реферат, курсовая, диплом, контрольная)

Курсовая работа

MP3 проигрыватель на языке высокого уровня C#

пользователь интерфейс программирование

Объект исследования — обработка и воспроизведение MP3 (*.mp3) файлов.

Цель работы — программная реализация настольного приложения с использованием языка программирования C#. Систематизация знаний полученных в процессе изучения курса «Объектно-ориентированное программирование».

Программа была написана с использованием языка программирования C# и среды разработки Microsoft Visual Studio 2010, также была использована библиотека Windows Media Player (wmp.dll).

1. Техническое задание

Основание для разработки: Углубление знаний языка программирования С#.

Назначение разработки: Создание программного обеспечения для воспроизведения аудиофайлов в формате MP3.

Требования к программному средству:

Программа должна открывать и воспроизводить аудиофайлы в формате mp3. Добавлять и удалять треки из плейлиста. Сохранять и открывать плейлисты. Также должна быть возможность приостанавливать и останавливать воспроизводимый файл. Перематывать дорожку и регулировать громкость.

Этапы разработки:

· Разработка технического задания.

· Проектирование пользовательского интерфейса.

· Написание кода, тестирование, исправление ошибок.

2. Проектирование пользовательского интерфейса

Главное окно программы

Реализация

Основные методы и свойства:

· wmp.settings.volume = volumeBar. Value; - Регулирование громкости.

· wmp.controls.play (); - Воспроизвести файл.

· wmp.controls.pause (); - Приостановить файл.

· wmp.controls.stop (); - Остановить файл.

· wmp.controls.currentPosition = trackBar. Value; - Текущая позиция ползунка.

· wmp.currentMedia.duration — Продолжительность файла.

· wmp.status. ToString (); - Статус файла.

· openFileDialog1. ShowDialog (); - Диалоговое окно для добавления файлов в плейлист.

· playListLB. Items. Remove (playListLB. SelectedItem); - Удаление из плейлиста.

· saveFileDialog1. ShowDialog (); - Диалоговое окно для сохранения плейлиста.

· open. ShowDialog (); - Диалоговое окно для открытия плейлиста.

3. Руководство пользователя

Главная форма содержит все элементы интерфейса и даёт доступ ко всем функциям программы.

Форма содержит плейлист и кнопки, с помощью которых осуществляются все операции.

Форма содержит следующие ЭУ:

· «Воспроизвести» кнопка, по нажатию которой воспроизводится первый файл из списка или приостановленный файл.

· Если плейлист пуст, то выводится соответствующее сообщение:

· «Пауза» кнопка, по нажатию которой воспроизводимый файл приостанавливается на текущей позиции.

· «Стоп» кнопка, по нажатию которой файл останавливается и ползунок принимает изначальное положение в начале trackBar’а.

· «+» — добавить, «-» — удалить. Кнопки по нажатию, на которые файл в плейлист добавляется или удаляется.

· «Открыть» кнопка по нажатию которой открывается диалоговое окно для выбора и открытия плейлиста.

· «Сохранить» кнопка по нажатию на который открывается диалоговое окно для сохранения плейлиста.

· Плейлист — список содержащий пути к воспроизводимым файлам. Где файлы сменяют друг друга автоматически.

Заключение

В данном курсовом проекте был разработан MP3 проигрыватель, который включает следующие возможности:

· Возможность воспроизведения, остановки и приостановки mp3 файла;

· Перематывание песни на любой промежуток времени;

· Отображение общей длительности песни;

· Возможность регулирования громкости;

· Создание и открытия плейлиста;

При разработке ПО был использован язык программирования С#. Также были получены новые навыки и возможности.

Приложение

using System;

using System. Windows. Forms;

using WMPLib;

using System. IO;

namespace A_Player

{

public partial class Form1: Form

{

public Form1 ()

{

InitializeComponent ();

}

WindowsMediaPlayer wmp = new WindowsMediaPlayer ();

private void Form1_Load (object sender, EventArgs e)

{

wmp.settings.volume = volumeBar. Value;

}

private void btnPlay_Click (object sender, EventArgs e)

{

if (playListLB. Items. Count == 0)

{

MessageBox. Show («Плейлист пуст»);

}

else

{

if (wmp.URL == null)

{

playListLB. SelectedIndex = 0;

wmp.URL = playListLB. SelectedItem. ToString ();

wmp.controls.play ();

}

else

{

wmp.controls.play ();

}

}

}

private void btnPause_Click (object sender, EventArgs e)

{

wmp.controls.pause ();

}

private void btnStop_Click (object sender, EventArgs e)

{

wmp.controls.stop ();

}

private void volumeBar_Scroll (object sender, EventArgs e)

{

wmp.settings.volume = volumeBar. Value;

toolTip1. SetToolTip (volumeBar, volumeBar. Value. ToString ());

}

private void trackBar_Scroll (object sender, EventArgs e)

{

wmp.controls.currentPosition = trackBar. Value;

toolTip1. SetToolTip (trackBar, wmp.controls.currentPositionString);

}

private void timer1_Tick (object sender, EventArgs e)

{

trackBar. Maximum = Convert. ToInt32 (wmp.currentMedia.duration);

trackBar. Value = Convert. ToInt32 (wmp.controls.currentPosition);

lblPositionTime. Text = wmp.controls.currentPositionString;

lblDurationTime. Text = wmp.currentMedia.durationString;

if (playListLB. SelectedIndex≠ playListLB. Items. Count — 1)

{

if (trackBar. Value + 1 == trackBar. Maximum)

{

playListLB. SelectedIndex = playListLB. SelectedIndex + 1;

wmp.URL = playListLB. SelectedItem. ToString ();

timer1. Enabled = true;

}

}

toolStripStatusLabel1. Text = wmp.status. ToString ();

}

private void btnAddTrack_Click (object sender, EventArgs e)

{

if ((openFileDialog1. ShowDialog () == DialogResult. OK) && (openFileDialog1. FilterIndex == 1))

{

for (int i = 0; i < openFileDialog1. FileNames. Length; i++)

{

playListLB. Items. Add (openFileDialog1. FileNames[i]);

}

if (playListLB. SelectedItems. Count == 0)

{

playListLB. SelectedIndex = 0;

wmp.URL = playListLB. SelectedItem. ToString ();

timer1. Enabled = true;

}

}

}

private void playListLB_MouseDoubleClick (object sender, MouseEventArgs e)

{

try

{

if (wmp.URL≠ playListLB. SelectedItem. ToString ())

{

wmp.URL = playListLB. SelectedItem. ToString ();

timer1. Enabled = true;

}

}

catch

{

}

}

private void btnDelTrack_Click (object sender, EventArgs e)

{

if (wmp.URL == playListLB. SelectedItem. ToString ())

{

wmp.controls.stop ();

wmp.URL = ««;

}

playListLB. Items. Remove (playListLB. SelectedItem);

}

private void btnSavePL_Click (object sender, EventArgs e)

{

if (saveFileDialog1. ShowDialog () == DialogResult. OK)

{

StreamWriter sw = File. CreateText (saveFileDialog1. FileName);

if (saveFileDialog1. FilterIndex == 1 || saveFileDialog1. FilterIndex == 2)

{

for (int i = 0; i < playListLB. Items. Count; i++)

{

playListLB. SelectedIndex = i;

sw. WriteLine (playListLB. SelectedItem. ToString ());

}

}

sw. Close ();

}

}

private void btnOpenPL_Click (object sender, EventArgs e)

{

OpenFileDialog open = new OpenFileDialog ();

open. Filter = «Плейлист (*.pls)|*.pls|Текстовый документ (*.txt)|*.txt»;

if (open. ShowDialog () == DialogResult. OK)

{

StreamReader sr = File. OpenText (open. FileName);

if (open. FilterIndex == 1 || open. FilterIndex == 2)

{

while (sr. EndOfStream≠ true)

{

playListLB. Items. Add (sr. ReadLine ());

}

}

sr. Close ();

}

}

}

}

Показать весь текст
Заполнить форму текущей работой