次の方法で共有


Gyrometer.ReadingChanged イベント

定義

ジャイロメーターが現在のセンサーの読み取り値を報告するたびに発生します。

// Register
event_token ReadingChanged(TypedEventHandler<Gyrometer, GyrometerReadingChangedEventArgs const&> const& handler) const;

// Revoke with event_token
void ReadingChanged(event_token const* cookie) const;

// Revoke with event_revoker
Gyrometer::ReadingChanged_revoker ReadingChanged(auto_revoke_t, TypedEventHandler<Gyrometer, GyrometerReadingChangedEventArgs const&> const& handler) const;
public event TypedEventHandler<Gyrometer,GyrometerReadingChangedEventArgs> ReadingChanged;
function onReadingChanged(eventArgs) { /* Your code */ }
gyrometer.addEventListener("readingchanged", onReadingChanged);
gyrometer.removeEventListener("readingchanged", onReadingChanged);
- or -
gyrometer.onreadingchanged = onReadingChanged;
Public Custom Event ReadingChanged As TypedEventHandler(Of Gyrometer, GyrometerReadingChangedEventArgs) 

イベントの種類

次の例では、C# と XAML を使用して構築された UWP アプリが ReadingChanged イベント ハンドラーを登録する方法を示します。

private void ScenarioEnable(object sender, RoutedEventArgs e)
{
    if (_gyrometer != null)
    {
        // Establish the report interval
        _gyrometer.ReportInterval = _desiredReportInterval;

        Window.Current.VisibilityChanged += new WindowVisibilityChangedEventHandler(VisibilityChanged);
        _gyrometer.ReadingChanged += new TypedEventHandler<Gyrometer, GyrometerReadingChangedEventArgs>(ReadingChanged);

        ScenarioEnableButton.IsEnabled = false;
        ScenarioDisableButton.IsEnabled = true;
    }
    else
    {
        rootPage.NotifyUser("No gyrometer found", NotifyType.StatusMessage);
    }
}

次の例は、ReadingChanged イベント ハンドラーを示しています。

async private void ReadingChanged(object sender, GyrometerReadingChangedEventArgs e)
{
    await Dispatcher.RunAsync(CoreDispatcherPriority.Normal, () =>
    {
        GyrometerReading reading = e.Reading;
        ScenarioOutput_X.Text = String.Format("{0,5:0.00}", reading.AngularVelocityX);
        ScenarioOutput_Y.Text = String.Format("{0,5:0.00}", reading.AngularVelocityY);
        ScenarioOutput_Z.Text = String.Format("{0,5:0.00}", reading.AngularVelocityZ);
    });
}

注釈

アプリケーションでは、このイベント ハンドラーを登録してセンサーの読み取り値を取得できます。 アプリケーションは、目的の ReportInterval を確立する必要があります。 これにより、アプリケーションの要件を満たすためにリソースを割り当てる必要があることをセンサー ドライバーに通知します。

アプリケーションでは、 ReportInterval プロパティを設定することで、このイベントの頻度を設定できます。

適用対象