Image

Fermé
alexyver Messages postés 13 Date d'inscription mardi 30 août 2011 Statut Membre Dernière intervention 3 mars 2015 - Modifié par alexyver le 3/03/2015 à 10:56
KX Messages postés 16733 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 janvier 2024 - 3 mars 2015 à 18:39
Bonjour,
Je suis un débutant en Java et j'essaye de programmer un Mario like sur Netbeans. Pour le déplacement je veux utiliser une image gif (je trouve cela plus simple) donc j'ai créé une image gif qui ne se lance pas en boucle:
if (c == 37) { // c  est le key code (flèche gauche)
x = x - 5; // Le déplacement vers la gauche
MonPerso.setLocation(x, y); // Je bouge l'image
MonPerso.setIcon(new ImageIcon(Mouve.class.getResource("/images/MarioGauche.gif"))); // Je lui set l'image


L'image marche parfaitement pour la première exécution mais le problème c'est que lorsque je relance l'image elle ne se rejoue pas...
Merci d'avance !
A voir également:

1 réponse

KX Messages postés 16733 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 janvier 2024 3 015
3 mars 2015 à 18:39
Bonjour,

Avec ton code partiel je ne vois pas où est le problème, il faudrait peut-être voir de quel type est MonPerso, comment tu traites le rafraîchissement, etc.

Deux petites remarques :

1) Tu as des constantes dans la classe KeyEvent pour chaque touche que tu peux avoir sur le clavier :
if (c == KeyEvent.VK_LEFT) { // flèche gauche

2) Ça ne sert à rien de charger ton image à chaque fois que tu fais un déplacement, tu devrais lire le fichier une seule fois au début du programme et réutiliser le même objet à chaque fois.
private static final ImageIcon MARIO_GAUCHE_ICON =
    new ImageIcon(Mouve.class.getResource("/images/MarioGauche.gif"));
...
MonPerso.setIcon(MARIO_GAUCHE_ICON);
0