[java]mon animation marche envers
Résolu/Fermé
A voir également:
- [java]mon animation marche envers
- Waptrick java football - Télécharger - Jeux vidéo
- Jeux java itel football - Télécharger - Jeux vidéo
- Ecran a l'envers - Guide
- Java bible - Forum Téléchargement
- / À l'envers clavier ✓ - Forum Matériel & Système
5 réponses
KX
Messages postés
16752
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
31 août 2024
3 019
14 août 2013 à 19:38
14 août 2013 à 19:38
Toujours ton éternel problème : tu essayes d'exécuter un programme qui ne compiles pas !!!
bonsoir
chez moi le prg marche,compile bien
mais quand je clique sur le bouton Go,mon rond s'arrête c'est bizarre non!!!!
chez moi le prg marche,compile bien
mais quand je clique sur le bouton Go,mon rond s'arrête c'est bizarre non!!!!
KX
Messages postés
16752
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
31 août 2024
3 019
14 août 2013 à 22:31
14 août 2013 à 22:31
Il y aura surement un problème une fois que ton programme sera complètement compilé, mais pour l'instant ton programme ne compile pas. Si chez toi ça fonctionne c'est que tu dois avoir d'anciennes versions de tes classes (à un moment où elles compilaient) donc Java mélange les anciennes classes avec les nouvelles ce qui peut donner n'importe quoi !
Effaces les fichiers .class de ton projet et réessaye de compiler, tu verras que cela échoue...
Effaces les fichiers .class de ton projet et réessaye de compiler, tu verras que cela échoue...
j'ai réussi moité, je clique sur le bouton "Stop" animation s'arrête;
mais le bouton "Go" ne devient pas cliquable
merci de m'aider svp
mais le bouton "Go" ne devient pas cliquable
merci de m'aider svp
KX
Messages postés
16752
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
31 août 2024
3 019
14 août 2013 à 23:14
14 août 2013 à 23:14
Evidemment que le bouton Go n'est pas cliquable, vu que la classe Bouton2Listener ne compile pas, et pour cause : elle implémente ActionListener, mais ne définit pas la méthode actionPerformed ! Il en est de même avec la classe Fenetre...
Si ton programme fonctionne en l'état c'est grâce à des anciennes versions de tes classes qui ne correspondent plus au code qui est ici, donc fais le ménage, corrige ce qu'il faut, et si nécessaire reviens avec un code complété qui compile !
Si ton programme fonctionne en l'état c'est grâce à des anciennes versions de tes classes qui ne correspondent plus au code qui est ici, donc fais le ménage, corrige ce qu'il faut, et si nécessaire reviens avec un code complété qui compile !
ça y est,je l'ai corrigé,maintenant ça marche
import java.awt.BorderLayout; import java.awt.Color; import java.awt.Dimension; import java.awt.FlowLayout; import java.awt.Font; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.GridLayout; import java.awt.BorderLayout; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; public class Fenetre extends JFrame implements ActionListener { private Panneau pan=new Panneau(); private JButton bouton=new JButton("Go"); private JButton bouton2=new JButton("Stop"); private JPanel container=new JPanel(); private JLabel label = new JLabel("Le JLabel"); private int compteur=0; private boolean animated=true; private boolean backX, backY; private int x,y; public Fenetre() { this.setTitle("Animation"); this.setSize(300,300); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.setLocationRelativeTo(null); container.setBackground(Color.white); container.setLayout(new BorderLayout()); container.add(pan,BorderLayout.CENTER); bouton.addActionListener(new BoutonListener()); bouton.setEnabled(false); bouton2.addActionListener(new Bouton2Listener()); JPanel south=new JPanel(); south.add(bouton); south.add(bouton2); container.add(south,BorderLayout.SOUTH); Font police=new Font("Tahoma",Font.BOLD,16); label.setFont(police); label.setForeground(Color.blue); label.setHorizontalAlignment(JLabel.CENTER); container.add(label,BorderLayout.NORTH); this.setContentPane(container); this.setVisible(true); go ( ); } private void go ( ) { int x=pan.getPosX(),y=pan.getPosY(); while(this.animated) { if(x<1)backX=false; if(x>pan.getWidth()-50)backX=true; if(y<1)backY=false; if(y>pan.getHeight()-50)backY=true; if(!backX) pan.setPosX(++x); else pan.setPosX(--x); if(!backY) pan.setPosY(++y); else pan.setPosY(--y); pan.repaint(); try { Thread.sleep(3); } catch(InterruptedException e) { e.printStackTrace(); } } } @Override public void actionPerformed(ActionEvent e) { throw new UnsupportedOperationException("Not supported yet."); } /*Class qui écoute notre bouton1 **/ class BoutonListener implements ActionListener { /*Redéfinition de la méthode actionPerformed ***/ public void actionPerformed(ActionEvent arg0) { animated=true; bouton.setEnabled(false); bouton2.setEnabled(true); go(); } } /*Classe qui écoute notre bouton2 **/ class Bouton2Listener implements ActionListener { /*Redéfinition de la méthode actionPerformed ***/ public void actionPerformed(ActionEvent arg0) { animated=false; bouton.setEnabled(true); bouton2.setEnabled(false); } } }
KX
Messages postés
16752
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
31 août 2024
3 019
15 août 2013 à 21:44
15 août 2013 à 21:44
Remarque : au lieu de mettre un commentaire /*Redéfinition de la méthode actionPerformed ***/ tu peux mettre l'annotation @Override qui est faite exprès pour cela.
Exemple :
Exemple :
class BoutonListener implements ActionListener { @Override public void actionPerformed(ActionEvent arg0) { animated=true; bouton.setEnabled(false); bouton2.setEnabled(true); go(); } }
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question