Accelerometer.Shaken Ereignis
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Tritt auf, wenn der Beschleunigungsmesser erkennt, dass der PC geschüttelt wurde.
// Register
event_token Shaken(TypedEventHandler<Accelerometer, AccelerometerShakenEventArgs const&> const& handler) const;
// Revoke with event_token
void Shaken(event_token const* cookie) const;
// Revoke with event_revoker
Accelerometer::Shaken_revoker Shaken(auto_revoke_t, TypedEventHandler<Accelerometer, AccelerometerShakenEventArgs const&> const& handler) const;
public event TypedEventHandler<Accelerometer,AccelerometerShakenEventArgs> Shaken;
function onShaken(eventArgs) { /* Your code */ }
accelerometer.addEventListener("shaken", onShaken);
accelerometer.removeEventListener("shaken", onShaken);
- or -
accelerometer.onshaken = onShaken;
Public Custom Event Shaken As TypedEventHandler(Of Accelerometer, AccelerometerShakenEventArgs)
Ereignistyp
Beispiele
Im folgenden Beispiel wird veranschaulicht, wie eine mit C# und XAML erstellte UWP-App ihren Shaken-Ereignishandler registriert.
private void ScenarioEnable(object sender, RoutedEventArgs e)
{
if (_accelerometer != null)
{
Window.Current.VisibilityChanged += new WindowVisibilityChangedEventHandler(VisibilityChanged);
_accelerometer.Shaken += new TypedEventHandler<Accelerometer, AccelerometerShakenEventArgs>(Shaken);
ScenarioEnableButton.IsEnabled = false;
ScenarioDisableButton.IsEnabled = true;
}
else
{
rootPage.NotifyUser("No accelerometer found", NotifyType.StatusMessage);
}
}
Das folgende Beispiel zeigt den Shaken-Ereignishandler.
async private void Shaken(object sender, AccelerometerShakenEventArgs e)
{
await Dispatcher.RunAsync(CoreDispatcherPriority.Normal, () =>
{
_shakeCount++;
ScenarioOutputText.Text = _shakeCount.ToString();
});
}
Hinweise
Verwenden Sie dieses Ereignis, um eine Benachrichtigung zu erhalten, dass das Gerät, das den Beschleunigungsmesser enthält, geschüttelt wurde. Die App muss vor der Registrierung für Shaken-Ereignisse kein Berichtsintervall festlegen.
Die Unterstützung für das Shaken-Ereignis hängt von der Hardware- und Treiberunterstützung ab. In der Praxis unterstützen nur sehr wenige Beschleunigungsmesser das Shaken-Ereignis. Wenn der Beschleunigungsmesser das Shaken-Ereignis nicht unterstützt und Sie einen Ereignishandler für das Shaken-Ereignis hinzufügen, wird kein Fehler ausgelöst, aber der Code im Ereignishandler wird nicht ausgeführt.