Corriger le code d'erreur en java
ghaouar
Messages postés
174
Date d'inscription
Statut
Membre
Dernière intervention
-
KX Messages postés 16761 Date d'inscription Statut Modérateur Dernière intervention -
KX Messages postés 16761 Date d'inscription Statut Modérateur Dernière intervention -
Salut,
SVP aider a corriger cette erreur qui s'affiche lors de exécution de mon code JAVA
le code est :
java.lang.ClassCastException: MonBouton cannot be cast to java.awt.event.ActionListener
SVP aider a corriger cette erreur qui s'affiche lors de exécution de mon code JAVA
le code est :
java.lang.ClassCastException: MonBouton cannot be cast to java.awt.event.ActionListener
A voir également:
- Comment corriger le code d'erreur 0x80131500 du windows store
- Code ascii - Guide
- Code activation windows 10 - Guide
- Comment déverrouiller un téléphone quand on a oublié le code - Guide
- Microsoft store download windows 10 - Guide
- Montage video windows - Guide
3 réponses
import java.awt.BorderLayout.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.geom.AffineTransform;
import java.awt.image.AffineTransformOp;
import java.awt.image.BufferedImage;
import java.awt.*;
import javax.swing.*;
import java.io.File;
import java.io.PrintWriter;
import javax.swing.*;
public class MonBouton extends JFrame{
private final Action_bouton zone_img = new Action_bouton();
private JButton ouvrir = new JButton("", new ImageIcon("D:\\importer.gif"));
private JButton enregistrer = new JButton("", new ImageIcon("D:\\enregitrer.gif"));
private JButton assombrir = new JButton("", new ImageIcon("D:\\SOMBRE.gif"));
private JButton agrandir = new JButton("", new ImageIcon("D:\\agrandir.gif"));
private JButton reduire = new JButton("", new ImageIcon("D:\\REDUIRE.gif"));
private JButton niveau_gris = new JButton("", new ImageIcon("D:\\niveau_gris.gif"));
private JButton brillance = new JButton("", new ImageIcon("D:\\bRILLANCE.gif"));
private JButton binairisation = new JButton("", new ImageIcon("D:\\reglage.gif"));
MonBouton () {
JPanel X = new JPanel();
X.setLayout(null); // rendre le latout nuul pour que setBound de boutton ca marche
//setBounds(int positionX, int positionY, int tailleX, int tailleY) xant la position sur l'écran ainsi que la taille.
ouvrir.setBounds(30, 50, 230, 60);
X.add ( ouvrir ) ;
ouvrir.addActionListener(null);
enregistrer.setBounds(30, 120, 230, 60);
X.add ( enregistrer ) ;
enregistrer.addActionListener(null);
niveau_gris.setBounds(30, 190, 230, 60);
X.add ( niveau_gris ) ;
niveau_gris.addActionListener(null);
assombrir.setBounds(30, 260, 230, 60);
X.add ( assombrir) ;
assombrir.addActionListener(null);
binairisation.setBounds(30, 330, 230, 60);
X.add ( binairisation) ;
binairisation.addActionListener(null);
agrandir.setBounds(30, 400, 230, 60);
X.add ( agrandir ) ;
agrandir.addActionListener(null);
reduire.setBounds(30, 470, 230, 60);
X.add ( reduire ) ;
reduire.addActionListener(null);
brillance.setBounds(30, 540, 230, 60);
X.add( brillance );
brillance.addActionListener(null);
getContentPane().add(zone_img);
//option de la fenetre
add(X);
setBounds(0, 0, 950, 700) ;
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
setTitle("Ma Fenetre") ;
}
// les actions des boutton
public void actionPerformed(ActionEvent e) {
Object source = e.getSource();
if (source==ouvrir)
{
JFileChooser fileOuvrirImage = new JFileChooser();
if (fileOuvrirImage.showOpenDialog(this) == JFileChooser.APPROVE_OPTION) {
zone_img.ajouterImage(new File(fileOuvrirImage.getSelectedFile()
.getAbsolutePath()));
}
} else if (source==enregistrer) {
JFileChooser fileEnregistrerImage = new JFileChooser();
if (fileEnregistrerImage.showSaveDialog(this) == JFileChooser.APPROVE_OPTION) {
File fichierEnregistrement = new File(fileEnregistrerImage.getSelectedFile().getAbsolutePath()+ ".JPG");
zone_img.enregistrerImage(fichierEnregistrement);
}
} else
if (source == niveau_gris) {
zone_img.imageEnNiveauGris();
} else if (source == brillance) {
zone_img.imageEclaircie();
} else if (source == binairisation) {
zone_img.imageBinaire();
} else if (source == agrandir) {
zone_img.agrandirImage();
} else if (source == reduire) {
zone_img.reduireImage();
}else if(source == assombrir){
zone_img.imageSombre();
}
}
public static void main(String args[])
{
try {
MonBouton frame = new MonBouton();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
}
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.geom.AffineTransform;
import java.awt.image.AffineTransformOp;
import java.awt.image.BufferedImage;
import java.awt.*;
import javax.swing.*;
import java.io.File;
import java.io.PrintWriter;
import javax.swing.*;
public class MonBouton extends JFrame{
private final Action_bouton zone_img = new Action_bouton();
private JButton ouvrir = new JButton("", new ImageIcon("D:\\importer.gif"));
private JButton enregistrer = new JButton("", new ImageIcon("D:\\enregitrer.gif"));
private JButton assombrir = new JButton("", new ImageIcon("D:\\SOMBRE.gif"));
private JButton agrandir = new JButton("", new ImageIcon("D:\\agrandir.gif"));
private JButton reduire = new JButton("", new ImageIcon("D:\\REDUIRE.gif"));
private JButton niveau_gris = new JButton("", new ImageIcon("D:\\niveau_gris.gif"));
private JButton brillance = new JButton("", new ImageIcon("D:\\bRILLANCE.gif"));
private JButton binairisation = new JButton("", new ImageIcon("D:\\reglage.gif"));
MonBouton () {
JPanel X = new JPanel();
X.setLayout(null); // rendre le latout nuul pour que setBound de boutton ca marche
//setBounds(int positionX, int positionY, int tailleX, int tailleY) xant la position sur l'écran ainsi que la taille.
ouvrir.setBounds(30, 50, 230, 60);
X.add ( ouvrir ) ;
ouvrir.addActionListener(null);
enregistrer.setBounds(30, 120, 230, 60);
X.add ( enregistrer ) ;
enregistrer.addActionListener(null);
niveau_gris.setBounds(30, 190, 230, 60);
X.add ( niveau_gris ) ;
niveau_gris.addActionListener(null);
assombrir.setBounds(30, 260, 230, 60);
X.add ( assombrir) ;
assombrir.addActionListener(null);
binairisation.setBounds(30, 330, 230, 60);
X.add ( binairisation) ;
binairisation.addActionListener(null);
agrandir.setBounds(30, 400, 230, 60);
X.add ( agrandir ) ;
agrandir.addActionListener(null);
reduire.setBounds(30, 470, 230, 60);
X.add ( reduire ) ;
reduire.addActionListener(null);
brillance.setBounds(30, 540, 230, 60);
X.add( brillance );
brillance.addActionListener(null);
getContentPane().add(zone_img);
//option de la fenetre
add(X);
setBounds(0, 0, 950, 700) ;
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
setTitle("Ma Fenetre") ;
}
// les actions des boutton
public void actionPerformed(ActionEvent e) {
Object source = e.getSource();
if (source==ouvrir)
{
JFileChooser fileOuvrirImage = new JFileChooser();
if (fileOuvrirImage.showOpenDialog(this) == JFileChooser.APPROVE_OPTION) {
zone_img.ajouterImage(new File(fileOuvrirImage.getSelectedFile()
.getAbsolutePath()));
}
} else if (source==enregistrer) {
JFileChooser fileEnregistrerImage = new JFileChooser();
if (fileEnregistrerImage.showSaveDialog(this) == JFileChooser.APPROVE_OPTION) {
File fichierEnregistrement = new File(fileEnregistrerImage.getSelectedFile().getAbsolutePath()+ ".JPG");
zone_img.enregistrerImage(fichierEnregistrement);
}
} else
if (source == niveau_gris) {
zone_img.imageEnNiveauGris();
} else if (source == brillance) {
zone_img.imageEclaircie();
} else if (source == binairisation) {
zone_img.imageBinaire();
} else if (source == agrandir) {
zone_img.agrandirImage();
} else if (source == reduire) {
zone_img.reduireImage();
}else if(source == assombrir){
zone_img.imageSombre();
}
}
public static void main(String args[])
{
try {
MonBouton frame = new MonBouton();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
}
Il y a des balises de codes pour éviter de perdre l'indentation de ton code, le mieux serait de s'en servir ;)
Sinon, vu que tu n'a pas mis tout ton code, j'ai essayé de "deviner" ce qu'il manquait, mais du coup je n'ai pas d'erreur...
Sinon, vu que tu n'a pas mis tout ton code, j'ai essayé de "deviner" ce qu'il manquait, mais du coup je n'ai pas d'erreur...
import java.awt.Component; import java.awt.event.ActionEvent; import java.io.File; import javax.swing.ImageIcon; import javax.swing.JButton; import javax.swing.JFileChooser; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.WindowConstants; class Action_bouton extends Component { private static final long serialVersionUID = 1L; public void imageSombre() {} public void reduireImage() {} public void agrandirImage() {} public void imageBinaire() {} public void imageEclaircie() {} public void imageEnNiveauGris() {} public void enregistrerImage(File fichierEnregistrement) {} public void ajouterImage(File file) {} } public class MonBouton extends JFrame { private static final long serialVersionUID = 1L; private final Action_bouton zone_img = new Action_bouton(); private JButton ouvrir = new JButton("", new ImageIcon("D:\\importer.gif")); private JButton enregistrer = new JButton("", new ImageIcon("D:\\enregitrer.gif")); private JButton assombrir = new JButton("", new ImageIcon("D:\\SOMBRE.gif")); private JButton agrandir = new JButton("", new ImageIcon("D:\\agrandir.gif")); private JButton reduire = new JButton("", new ImageIcon("D:\\REDUIRE.gif")); private JButton niveau_gris = new JButton("", new ImageIcon("D:\\niveau_gris.gif")); private JButton brillance = new JButton("", new ImageIcon("D:\\bRILLANCE.gif")); private JButton binairisation = new JButton("", new ImageIcon("D:\\reglage.gif")); MonBouton () { JPanel X = new JPanel(); X.setLayout(null); // rendre le latout nuul pour que setBound de boutton ca marche //setBounds(int positionX, int positionY, int tailleX, int tailleY) xant la position sur l'écran ainsi que la taille. ouvrir.setBounds(30, 50, 230, 60); X.add ( ouvrir ) ; ouvrir.addActionListener(null); enregistrer.setBounds(30, 120, 230, 60); X.add ( enregistrer ) ; enregistrer.addActionListener(null); niveau_gris.setBounds(30, 190, 230, 60); X.add ( niveau_gris ) ; niveau_gris.addActionListener(null); assombrir.setBounds(30, 260, 230, 60); X.add ( assombrir) ; assombrir.addActionListener(null); binairisation.setBounds(30, 330, 230, 60); X.add ( binairisation) ; binairisation.addActionListener(null); agrandir.setBounds(30, 400, 230, 60); X.add ( agrandir ) ; agrandir.addActionListener(null); reduire.setBounds(30, 470, 230, 60); X.add ( reduire ) ; reduire.addActionListener(null); brillance.setBounds(30, 540, 230, 60); X.add( brillance ); brillance.addActionListener(null); getContentPane().add(zone_img); //option de la fenetre add(X); setBounds(0, 0, 950, 700) ; setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE); setTitle("Ma Fenetre") ; } // les actions des boutton public void actionPerformed(ActionEvent e) { Object source = e.getSource(); if (source==ouvrir) { JFileChooser fileOuvrirImage = new JFileChooser(); if (fileOuvrirImage.showOpenDialog(this) == JFileChooser.APPROVE_OPTION) { zone_img.ajouterImage(new File(fileOuvrirImage.getSelectedFile() .getAbsolutePath())); } } else if (source==enregistrer) { JFileChooser fileEnregistrerImage = new JFileChooser(); if (fileEnregistrerImage.showSaveDialog(this) == JFileChooser.APPROVE_OPTION) { File fichierEnregistrement = new File(fileEnregistrerImage.getSelectedFile().getAbsolutePath()+ ".JPG"); zone_img.enregistrerImage(fichierEnregistrement); } } else if (source == niveau_gris) zone_img.imageEnNiveauGris(); else if (source == brillance) zone_img.imageEclaircie(); else if (source == binairisation) zone_img.imageBinaire(); else if (source == agrandir) zone_img.agrandirImage(); else if (source == reduire) zone_img.reduireImage(); else if(source == assombrir) zone_img.imageSombre(); } public static void main(String args[]) { try { MonBouton frame = new MonBouton(); frame.setVisible(true); } catch (Exception e) { e.printStackTrace(); } } }