Problème Timer (Swing) JAVA

cs_kevvvv Messages postés 1 Date d'inscription mardi 7 février 2006 Statut Membre Dernière intervention 12 juin 2006 - 12 juin 2006 à 14:29
Twinuts Messages postés 5375 Date d'inscription dimanche 4 mai 2003 Statut Modérateur Dernière intervention 14 juin 2023 - 12 juin 2006 à 17:33
Bonjour, j'ai un problème avec les Timer (Swing) de Java.

En fait, je dois réaliser un projet d'école et mon thème est Super Mario Bros

Tout fonctionne parfaitement pour le moment, seul problème, lorsque l'utilsateur perd (Game Over), il retourne sur le menu et recrée une nouvelle partie, donc nouvelle instance de Partie, mais les anciens Timer de la précédente instance de Partie tournent toujours. Donc pompent en ressources pour rien ! Existe t'il un moyen d'arreter tout les Timer créé dans une instance, qui elle meme à créé d'autres instances d'autres objets (Ennemis, Objets du décor..) qui créent eux même des Timer etc... ?

Merci de votre réponse :)

1 réponse

Twinuts Messages postés 5375 Date d'inscription dimanche 4 mai 2003 Statut Modérateur Dernière intervention 14 juin 2023 111
12 juin 2006 à 17:33
Salut,


stoque tes timer dans un vecteur de timer et arrete les qd tu n'en as plus besoin ex:


private Vector<Timer> vecTimers = new Vector<Timer>();


public void addTimer(Timer t){

    if(t != null){

       if(!t.isRunning()) t.start();

       vecTimers.add(t);

    }

}


public void stopAllTimer(){

    if(!vecTimers.isEmpty()){

       for(Timer t : vecTimers)

          if(t.isRunning()) t.stop();

       vecTimers.clear();

        vecTimers.trimToSize();

    }

}

WORA
0
Rejoignez-nous