1. Требуются разработчики и тестеры для проекта codebyOS. Требования для участия в проекте: Знание принципов работы ОС на базе Linux; Знание Bash; Крайне желательное знание CPP, Python, Lua; Навыки системного администрирования. Подробнее ...

    Скрыть объявление

Событие Playstatechange Для Windowsmediaplayer

Тема в разделе "Visual Basic", создана пользователем vadpetr, 11 фев 2015.

  1. vadpetr

    vadpetr New Member

    Репутация:
    0
    Регистрация:
    11 фев 2015
    Сообщения:
    1
    Симпатии:
    0
    Добрый день! Прошу помочь.

    Использую Media Player для просмотра видео. Хочу по окончании видео закрыть окно player’ а:
    ………………………………
    Player = New WMPLib.WindowsMediaPlayer
    …………………………………
    Player.openPlayer(filePath)
    Pr = Process.GetProcessesByName("wmplayer")(0)
    ………………………………….
    Private Sub Player_PlayStateChange (NewState As Integer) Handles Player.PlayStateChange
    If NewState = WMPLib.WMPPlayState.wmppsMediaEnded Then
    Pr.Kill()
    End If
    End Sub
    В этом варианте кода событие PlayStateChange «не отслеживается». В подпрограмму Player_PlayStateChange управление не передается

    Второй вариант:
    вместо Player.openPlayer(filePath) вставляю
    Player.URL = filePath
    Player.controls.play()
    событие PlayStateChange обрабатывается, player закрывается, но при этом проигрывается только звуковая дорожка.

    Третий вариант:
    В первый вариант после Pr = Process.GetProcessesByName("wmplayer")(0) добавляю
    Player.URL = filePath
    Player.controls.play()
    Т.е. запускаю и видео (со звуком) и отдельно звук. В этом случае видео со звуком «прокручивается» и окно закрывается.
    Но если пользоваться элементами управления player’a (например «пауза»), то все «сбивается»
    (звук продолжает идти и после того как он проигрывается – окно закрывается).

    Т.е событие PlayStateChange в области видимости только для Player.controls.play() (для аудио).
    Как его отследить для Player.openPlayer(filePath) (для видео)?
     
Загрузка...

Поделиться этой страницей