- Написание простого медиа-проигрывателя (часть 1)
- Статьи, похожие по тематике
- Комментарии читателей к данной статье
- Установка компонента ActiveX Windows Media Player в Delphi 2007 и более поздних
- How To Fix Windows Media Player ActiveX —>
- Contents [show]
- Значение Windows Media Player ActiveX?
- Причины Windows Media Player ActiveX?
- More info on Windows Media Player ActiveX
Сегодня:
— 0 — 0 — 0
Последние:
— 24.08, 10:44 / #6695
— 29.03, 23:32 / #6682
— 30 апреля 2012
Сейчас онлайн:
На сайте — 2
На IRC-канале — 2
Написание простого медиа-проигрывателя (часть 1)
Простейший медиа-проигрыватель можно создать стандартными средствами Windows. Существуют модули, которые доступны из любого языка программирования — это ActiveX. Delphi в этом плане не исключение. Встроенный в систему Windows Media Player имеет собственный ActiveX-модуль, который мы легко можем использовать в своей программе. Правда, кардинально изменить в нём что-либо не получится. В данной статье я покажу пример, как использовать этот компонент.
Для начала ActiveX-компонент (сокращённо AX) нужно интегрировать в оболочку Delphi. Делается это легко: открываем диалоговое окно Component — Import ActiveX Control. В разных версиях Delphi этот пункт меню может называться по-разному, но ключевым остаётся слово ActiveX. В открывшемся окне в списке компонент найдите строку Windows Media Player. Нажмите кнопку Install. В появившемся окне можно указать, в какой пакет следует установить компонент. Можно оставить всё по умолчанию и нажать ОК. После этого на вкладке ActiveX палитры компонент появится кнопка WindowsMediaPlayer. Теперь можно приступить к созданию проигрывателя.
Для начала поместите компонент на форму — щёлкните по его значку и затем по форме. Вы увидите знакомое изображение — изображение проигрывателя. Его внешний вид зависит от версии установленного в системе компонента. Примерный вид того, что вы увидите, изображён на рисунке 1.
Для начала давайте сделаем возможность открытия нужного файла. За путь к файлу, который нужно воспроизводить, отвечает свойство URL типа WideString (строка). Давайте сделаем для программы меню, куда и добавим нужный нам пункт. Поместите на форму TMainMenu (страница Standard). Дважды щёлкните по значку TMainMenu, лежащему на форме. Откроется дизайнер меню. Выделите единственный пункт в заголовке меню и в его свойстве Caption напишите «Файл«. Затем щёлкните по созданному пункту и снизу появится ещё одна пустая строка. Там и введите название нашего пункта — «Открыть«. Следующей строкой давайте создадим разделитель для меню — в свойстве Caption поставьте один-единственный символ — минус («—«). Следующей строкой сделайте пункт «Выход«. Ну вот, программа уже имеет меню, хотя и небольшое. Теперь нужно связать пункт меню с диалогом открытия файла. Найдите компонент TOpenDialog на странице Dialogs и поместите его на форму. Активируйте свойство Filter и нажмите на кнопку с тремя точками («. «). В появившемся окне введите желаемые типы файлов. В поле Filter Name нужно ввести описание типов файлов, а в поле Filter — сам фильтр. Пример на рисунке 2.
Чтобы с компонентом было удобно работать, измените его свойство Name на MediaPlayer.
Выделите компонент и перейдите в окно Object Inspector. Свойств (Properties) у компонента не очень много, а вот событий (Events) гораздо больше. Но мы используем лишь некоторые из них.
Для удобства, компонент MainMenu1 переименуем в MainMenu, а OpenDialog1 — в OpenDialog.
Пришло время запрограммировать пункт меню «Открыть«. Откройте дизайнер меню и дважды щёлкните по нужному пункту — откроется редактор кода. В этом месте следует написать:
Метод Execute открывает диалог и, если пользователь не нажал «Отмена«, то функция возвращает значение True, а в FileName записывается путь к выбранному файлу. Затем мы присваиваем свойству URL проигрывателя выбранный файл. Запустите программу и попробуйте открыть файл. Всё должно работать, файл должен воспроизводиться.
Теперь давайте приведём окно проигрывателя к нормальному виду. Сам проигрыватель нужно растянуть на всю ширину окна — измените его свойство Align на alClient. Саму форму стоит сделать поменьше, т.к. наш проигрыватель пока что воспроизводит только аудио-файлы. На мой взгляд, для формы можно установить ширину (Width) равной 300, а высоту (Height) — 200. Наконец, можно изменить вид окна и установить BorderStyle в значение bsSizeToolWin, а заголовок (Caption) — «Simple Media Player«.
Теперь запрограммируем пункт «Выход» — для этого следует написать в его обработчике всего одну строку:
Этот метод закрывает текущую форму (Self — объект, выбранный по умолчанию, форма) и завершает приложение.
Теперь нужно сделать в меню элементарные команды управления воспроизведением — Start, Stop, Pause. Конечно, в проигрывателе и без того есть существующие кнопки, но они должны иметь своё отражение и в меню.
Для начала добавьте в заглавную строку меню (туда, где «Файл«) пункт «Управление«. Затем добавьте два пункта — «Старт / Стоп» и «Пауза«. Запрограммировать эти команды легко. Для управление воспроизведением служит набор методов Controls, а узнать текущее состояние проигрывателя можно из свойства PlayState. Вот как выглядит обработчик пункта «Старт / Стоп«:
А вот обработчик «Паузы«:
Запустите программу и проверьте её работоспособность.
Как видите, мы создали сравнительно простой, но рабочий проигрыватель. В следующий раз мы продолжим его разработку. Примерное изображение окна программы после выполнения всех действий, описанных в статье, показано на рисунке.
Автор: Ерёмин А.А.
Статья добавлена: 16 февраля 2006
Зарегистрируйтесь/авторизируйтесь,
чтобы оценивать статьи.
Статьи, похожие по тематике
Для вставки ссылки на данную статью на другом сайте используйте следующий HTML-код:
Ссылка для форумов (BBCode):
Быстрая вставка ссылки на статью в сообщениях на сайте:
<
<<статья:17>> — полноценная HTML-ссылка на статью (текст ссылки — название статьи).
Поделитесь ссылкой в социальных сетях:
Комментарии читателей к данной статье
Репутация: нет | |||||
Репутация: нет | |||||
Репутация: нет | |||||
Репутация: нет | |||||
Репутация: нет | |||||
Репутация: +40 | |||||
Репутация: нет | |||||
Репутация: +40 | |||||
Репутация: нет | я впервый раз пробую сделать что то подобное и у меня неполучилось хотя внешний вид как на картинке а вот с кодом чет нетак скажите что unit Unit1; uses type var procedure TForm1.N2Click(Sender: TObject); procedure TForm1.N4Click(Sender: TObject); procedure TForm1.N5Click(Sender: TObject); procedure TForm1.N6Click(Sender: TObject); procedure TForm1.N7Click(Sender: TObject); Оставлять комментарии к статьям могут только зарегистрированные пользователи. Установка компонента ActiveX Windows Media Player в Delphi 2007 и более поздних
В Delphi 7 установка компонентов ActiveX проходила буквально в 4 клика. Многие же пользователи Delphi 2007 столкнулись с проблемой установки таких компонентов. Причем решение проблемы достаточно трудно найти через гугл, все ссылки ведут на описание установки для Delphi 7. Ниже я привожу подробную инструкцию, как установить компонент ActiveX Windows Media Player в Делфи 2007. Выполните следующие действия: 3. Импортируйте ActiveX компонент: Component -> Import Component… -> Import ActiveX Control 4. Выберите контрол Windows Media Player 5. Установите флажок Generate Component Wrappers 6. Выберите Add unit to WMP.dproj project и нажмите кнопку Finish 7. Сохраните проект: File -> Save All 9. Если установка завершилась успешно, то появится следующее сообщение: Установка компонента завершена. Ниже описан пример работы с ним. 11. Кидаем компонент TWidowsMediaPlayer на форму 12. Для начала воспроизведения необходимо выполнить код: How To Fix Windows Media Player ActiveX —>
|