begin process at 2012 02 14 19:10:37
  Trouver un code source :
 
dans
 
Accueil > Forum > 

JAVA / J2EE / J2ME

 > 

Divers

 > 

Applets

 > 

animation qui ne réagit pas


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

animation qui ne réagit pas

samedi 20 septembre 2008 à 21:46:19 | animation qui ne réagit pas

natou

Bonjour à tous,

       Je dois créer un applet qui implémente "Runnable".  Je dois y ajouter un thread qui lance une petite animation toute simple.  Celle-ci fonctionne très bien.  La ou les choses se compliquent, c'est que mon animation doit arreter quand on clique dessus, et redemarrer si ou clique a nouveau. 

Pour l'instant, quand je clique une fois, mon application arrete, mais ensuite, elle ne veut plus redémarrer.  Je crois qu'il y a quelque chose que je ne comprend pas dans les évenements. 

J'apprécierais beaucoup une piste me disant ou j'ai pu faire erreur....  car je débute avec java et honnetement, je suis completement perdue.

voici mon code :

import java.awt.*;
import java.applet.Applet;

public class AnimImages extends Applet implements Runnable {
 Thread animation = null;
    private int posImage= 0;
    private Image [] tableImg = new Image[8];
    private boolean roule = true;
   
   
   
        //Évenement qui change l'image au click de la souris
    public boolean mouseDown(Event evt,int x, int y){
       
        //Si la variable de position d'image est plus petite que la longeur du tableau, elle s'incrémente. 
        //Sinon, elle retourne au début pour afficher la premiere image à nouveau
        roule = roule == false;
        if (roule == true) animation.start();
        if (roule == false) animation.stop();
  showStatus("Roule = " + roule);
        return true;
    }

   
   
    public void start(){
     if (animation == null){
      animation = new Thread(this);
      animation.start();
     } 
    } 
     
     
    public void stop(){
     if (animation != null)
      animation.stop();
    }
     
    public void run(){
     //Définit la priorité du processus
     animation.setPriority(1);
     
     //Tant que l'animation est "en vie", on afficher l'image,
     //on laisse dormir le processus et on incrémente
     //le pointeur du tableau d'image pour l'image suivante
     while (animation.isAlive()){
      repaint();
      try {
             animation.sleep(50);
            } catch (InterruptedException e) {}
   
      posImage = posImage < tableImg.length-1? posImage + 1: 0;
     }
    } 
    
     
    //Initialisation de l'applet
    public void init() {
     setBackground(Color.WHITE);
  
  //Boucle qui ajoute les images au tableau d'image
  for (int i = 0; i < tableImg.length; i++){
   tableImg[i]=getImage(getCodeBase(), "../images/" + "guepard" + (i + 1) + ".gif");
   }
  
    }
   
 public void update(Graphics g){
  paint(g);
 }
   
   
    public void paint(Graphics g) {
  g.setColor(getBackground());  
  g.fillRect(0,0,200,150);
  g.drawImage(tableImg[posImage],10,15,this);
     
    }
   
}

dimanche 21 septembre 2008 à 09:32:06 | Re : animation qui ne réagit pas

uhrand

Nous ne pouvons pas réanimer un Thread mort. Donc il nous faut créer un nouveau Thread, par exemple comme ceci:
if (roule == true) {
    animation = null;
    start();
}


Cette discussion est classée dans : public, image, animation, void, roule


Répondre à ce message

Sujets en rapport avec ce message

pb image [ par bidules ] voici le code.l'erreur retourner est exeption null pointer a la ligne 29 (qd j'appelle a.largeur());en fait j'essaye juste d'affichier une image mais Redimensionner image dans applet [ par EvilGost ] alors, j'ai un petit prog en java qui affiche une image dans une applet.Le probleme, c'est que l'applet doit faire 300*200 et que l'image est en 600*4 Intégrer une image créée à un panel [ par Elisa23 ] Bonjour à tous !Je voudrais avoir sur la même page un texte qui défile et un bouton...J'y arrive presque, mais le texte et le bouton se superposent au probleme de raffraichissement d'image [ par Azdruyel ] Bonjour a tous!Aujourd'hui,un nouveau jour, et donc un nouveau probleme!!!Alors voila, mon truc c'est que j'affiche en fond dans un JPanel une image ( image et fleche [ par MawueN ] merci à ceux qui peuvent repondreAlors voila le sujet : J'aimerai faire un jeu assez simple en 2D ( à la metal slug) avec un perso qui tire des boule scintillement dans mon thread [ par lonyc ] Bonjour,   On voit bien dans mon animation que j'efface l'image, ca fait un scintillement, c'est vraiment pas beau.   Et je pense avoir fait ce qu'i Scintillement ou trainée de mon image : problème de thread [ par C _ Line ] Voici mon code : import java.applet.*; import java.awt.*; import java.awt.image.*; import java.awt.Image; import java.awt.event.*; import java.net.*; le dimension de l'image dans l'applet [ par jalil_msti ] voila une applet de l'animation des images mais mon problème c'est j'arrive pas à redimensionner les images selon le dimension de l'applet cad je veux probleme canvas [ par darkspoilt ] Bonjour le programme que j'ai fait ne fonctionne pas dans une beanbox. j'aimreais lancer ensuite directement dans une fenêtre swing en autoexécutable probleme d'utilisation de bean [ par darkspoilt ] obnjour j'ai un porbleme d'uilisation de bean je veux exécuter mon bean pour q'il affiche des images pour ensuite les faire défiler. Cela ne fonctio


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,296 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales