SystemMediaTransportControls.ButtonPressed | buttonpressed Event

SystemMediaTransportControls 上でボタンが押されたときに発生します。

構文


function onButtonPressed(eventArgs) { /* コード */ }
 
// addEventListener syntax
systemMediaTransportControls.addEventListener("buttonpressed", onButtonPressed);
systemMediaTransportControls.removeEventListener("buttonpressed", onButtonPressed);
 
- or -

systemMediaTransportControls.onbuttonpressed = onButtonPressed;


イベント情報

Delegate TypedEventHandler<SystemMediaTransportControls, SystemMediaTransportControlsButtonPressedEventArgs>

解説

ButtonPressed イベントのハンドラーを登録し、システム トランスポート コントロール ボタンのイベントをアプリケーションに統合します。 また、再生イベントを処理するための SystemMediaTransportControls.IsPlayEnabled など、個々のトランスポート コントロール機能を有効にする必要があります。

SystemMediaTransportControlsButtonPressedEventArgsButton プロパティは、どのボタンが押されたかを示します。

詳細については、「システム メディア トランスポート コントロールの使用方法」を参照してください。

MediaElement を再生および一時停止するための ButtonPressed イベント ハンドラーおよびヘルパー メソッドを作成するコードを次に示します。PlayPause の呼び出しは、Dispatcher.RunAsync を使用して CoreDispatcher によって UI スレッドにマーシャリングされることに注意してください。


void SystemControls_ButtonPressed(SystemMediaTransportControls sender, 
    SystemMediaTransportControlsButtonPressedEventArgs args)
{
    switch (args.Button)
    {
        case SystemMediaTransportControlsButton.Play:
            PlayMedia();
            break;
        case SystemMediaTransportControlsButton.Pause:
            PauseMedia();
            break;
        default:
            break;
    }
}

async void PlayMedia()
{
    await Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, () =>
    {
        musicPlayer.Play();
    });
}

async void PauseMedia()
{
    await Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, () =>
    {
        musicPlayer.Pause();
    });
}


CurrentStateChanged イベント ハンドラーを処理し、SystemMediaTransportControls の状態を更新するコードを次に示します。


void MusicPlayer_CurrentStateChanged(object sender, RoutedEventArgs e)
{
    switch (musicPlayer.CurrentState)
    {
        case MediaElementState.Playing:
            systemControls.PlaybackStatus = MediaPlaybackStatus.Playing;
            break;
        case MediaElementState.Paused:
            systemControls.PlaybackStatus = MediaPlaybackStatus.Paused;
            break;
        case MediaElementState.Stopped:
            systemControls.PlaybackStatus = MediaPlaybackStatus.Stopped;
            break;
        case MediaElementState.Closed:
            systemControls.PlaybackStatus = MediaPlaybackStatus.Closed;
            break;
        default:
            break;
    }
}


要件

最小限サポートされるクライアント

Windows 8.1

最小限サポートされるサーバー

Windows Server 2012 R2

名前空間

Windows.Media
Windows::Media [C++]

メタデータ

Windows.winmd

参照

SystemMediaTransportControls

 

 

表示:
© 2015 Microsoft