Проигрывание видео-заставки в C#

Блоговая публикация пользователя: Flashhell Эта публикация была перенесена из личного блога пользователя в общие разделы уровок сайта.

Проигрывание видео-заставки в C#

В этом уроке вы познакомитесь со способом, который быстро и без лишних усилий позволит проиграть видео на основной форме окна приложения с помощью COM-элемента Windows Media Player.

Создаем новый проект Windows Forms.

Далее необходимо кликнуть правой кнопкой по Toolbox и выбрать Choose Items.

Уроки OpenGL различных тематик: Choose Items в окне Toolbox Рисунок 1. Choose Items в окне Toolbox.
Во вкладке COM находим "Windows Media Player" и выбираем его.

Уроки OpenGL различных тематик: "Windows Media Player" во вкладке COM Рисунок 2. "Windows Media Player" во вкладке COM.
Теперь Windows Media Player появился в окне Toolbox.

Уроки OpenGL различных тематик: Windows Media Player в окне Toolbox Рисунок 3. Windows Media Player в окне Toolbox.
Перетягиваем его на форму. Затем кликаем Properties.

Уроки OpenGL различных тематик: Windows Media Player, перетянутый на форму Рисунок 4. Windows Media Player, перетянутый на форму.
Здесь мы выставляем режим None, задаем имя файла, указываем параметры "растягивать по размеру экрана" и "автозапуск".

Счетчик воспроизведения - 1, громкость - на ваше усмотрение.

Уроки OpenGL различных тематик: Свойства проигрователя Windows Media Player Рисунок 5. Свойства проигрователя Windows Media Player.
Щелкаем по вкладке "Дополнительно" и выставляем все с соответствии параметрами на рисунке 6.

Уроки OpenGL различных тематик: Свойства проигрователя Windows Media Player: вкладка Дополнительно Рисунок 6. Свойства проигрователя Windows Media Player: вкладка Дополнительно.
В Properties элемента WMP (Windows Media Player) ставим свойство Dock в Fill.

Уроки OpenGL различных тематик: Свойству Dock присваевается значение Fill Рисунок 7. Свойству Dock присваевается значение Fill.
Создаем обработчик события PlayStateChange (двойным щелчком по нему).

Уроки OpenGL различных тематик: Обработчик события PlayStateChange Рисунок 8. Обработчик события PlayStateChange.
В нем вписываем следующее:

Код:
/*http://esate.ru, Flashhell*/


// прописываем код, чтобы убрать элемент WMP с формы, когда видео закончится
// newState, когда воспроизведение файла заканчивается, получает значение 8
if (e.newState == 8){
        this.axWindowsMediaPlayer1.close(); // закрываем сам плеер, чтобы все ресурсы освободились
        this.Controls.Remove(axWindowsMediaPlayer1); // убираем элемент WMP с формы
}


Готово, однако для полноценного использования нужен Full Screen режим отображения формы, так как если выставить его в настройка WMP, он начнет обрабатывать двойной щелчок с явными багами и ошибками.

Например, видео останавливается, а сам плеер возвращается к стандартным размерам, которые были установлены при инициализации.

Более подробно с этими деталями можно ознакомиться в статье о полноэкранном режиме.

Нет доступа к просмотру комментариев.

^