Question

Je veux utiliser un contrôleur Xbox 360 pour lire des sons si le bouton "A" est enfoncé.Dans mon extrait de code, j'ai utilisé une boucle while pour vérifier si le bouton est enfoncé.Y a-t-il des gestionnaires d'événements que je peux utiliser ou des solutions différentes (ce n'est pas pour le développement de jeux)?

while (b == false)
{
    GamePadState currentState2 = GamePad.GetState(PlayerIndex.One);
    if (currentState2.IsConnected
         && currentState2.Buttons.A
                == Microsoft.Xna.Framework.Input.ButtonState.Pressed)
    {
         play1stTrack();
         isButtonApressed = true;

    }
}

Était-ce utile?

La solution

Votre boucle de mise à jour fonctionne à 60 images par seconde (généralement), vous pouvez utiliser cette fois pour vérifier l'entrée et la gérer.Il n'est pas nécessaire d'écrire votre propre boucle pour l'entrée.

Exemple:

protected override void Update(GameTime gameTime)
{
    GamePadState currentState2 = GamePad.GetState(PlayerIndex.One);
    if (currentState2.IsConnected
         && currentState2.Buttons.A
                == Microsoft.Xna.Framework.Input.ButtonState.Pressed)
    {
         play1stTrack();
         isButtonApressed = true;
    }
    //Handle input with isButtonApressed
}

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top