Hé, je fais un jeu de type Frogger et je me sers d'une minuterie pour que les images défilent à l'écran. J'utilise également l'événement keydown pour gérer quand l'utilisateur déplace la «grenouille». Donc, w déplacé vers le haut, vers le bas s se déplace, etc.keydown gèle timer C#
Le problème que je suis venu à travers est que chaque fois que l'utilisateur appuie sur un bouton de mouvement, le gel de la minuterie. Cela signifie que si l'utilisateur maintient simplement "w" ou "haut", toutes les voitures s'arrêtent de bouger.
est-il un moyen de mettre la minuterie dans un travailleur de fond ou un moyen de faire le report de minuterie tic-tac, même lorsque l'utilisateur se déplace?
Merci pour toute aide!
C'est ce que j'ai actuellement:
public string i;
private void Form1_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyValue == 68)
{
i = "right";
backgroundWorker1.RunWorkerAsync();
}
}
private void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e)
{
if (i == "right")
{
pictureBox1.Location = new Point((pictureBox1.Location.X + 17), pictureBox1.Location.Y);
}
}
Merci pour votre aide! – Crazyd22