Probleme d'exécution de code java
ghaouar
Messages postés
174
Date d'inscription
Statut
Membre
Dernière intervention
-
KX Messages postés 19031 Statut Modérateur -
KX Messages postés 19031 Statut Modérateur -
Salut,
je créer ce code je trouve une problème ? aider moi a résoudre cette problème ?
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.*;
public class MonBouton {
public static void main(String argv[]) {
JFrame f = new JFrame("ma fenetre");
JPanel X = new JPanel();
X.setLayout(null); // rendre le latout nuul pour que setBound de boutton ca marche
Icon warnIcon = new ImageIcon ( "D:\\images.gif" ) ;
JButton ouvrir = new JButton ( warnIcon ) ;
//setBounds(int positionX, int positionY, int tailleX, int tailleY) xant la position sur l'écran ainsi que la taille.
ouvrir.setBounds(30, 50, 190, 60);
X.add ( ouvrir ) ;
ouvrir.addActionListener(null);
Icon warnIcon6 = new ImageIcon ( "D:\\images-photos-icone96.gif" ) ;
JButton quitter = new JButton ( warnIcon6 ) ;
quitter.setBounds(30, 330, 190, 60);
X.add( quitter );
quitter.addActionListener(null);
// les actions des boutton
public void actionPerformed(ActionEvent e) { ////////// le problème est dans cet ligne
if (e.getSource().equals(ouvrir))
{
// ouvrir une image
}
else if (e.getSource().equals(quitter))
{
// Faire la convolution mathématique suivant un masque donné
}
}
// option de la fenetre
f.add(X);
f.setBounds(0, 0, 950, 700) ;
f.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
f.setVisible(true);
}
}
je créer ce code je trouve une problème ? aider moi a résoudre cette problème ?
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.*;
public class MonBouton {
public static void main(String argv[]) {
JFrame f = new JFrame("ma fenetre");
JPanel X = new JPanel();
X.setLayout(null); // rendre le latout nuul pour que setBound de boutton ca marche
Icon warnIcon = new ImageIcon ( "D:\\images.gif" ) ;
JButton ouvrir = new JButton ( warnIcon ) ;
//setBounds(int positionX, int positionY, int tailleX, int tailleY) xant la position sur l'écran ainsi que la taille.
ouvrir.setBounds(30, 50, 190, 60);
X.add ( ouvrir ) ;
ouvrir.addActionListener(null);
Icon warnIcon6 = new ImageIcon ( "D:\\images-photos-icone96.gif" ) ;
JButton quitter = new JButton ( warnIcon6 ) ;
quitter.setBounds(30, 330, 190, 60);
X.add( quitter );
quitter.addActionListener(null);
// les actions des boutton
public void actionPerformed(ActionEvent e) { ////////// le problème est dans cet ligne
if (e.getSource().equals(ouvrir))
{
// ouvrir une image
}
else if (e.getSource().equals(quitter))
{
// Faire la convolution mathématique suivant un masque donné
}
}
// option de la fenetre
f.add(X);
f.setBounds(0, 0, 950, 700) ;
f.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
f.setVisible(true);
}
}
6 réponses
-
Bonjour
si tu donnais le code d'erreur, ça aiderait
-
Bonjour,
voila le code d'erreur qui s'affiche.
Exception in thread "main" java.lang.Error: Unresolved compilation problems:
void is an invalid type for the variable actionPerformed
Syntax error on token "(", ; expected
Syntax error on token ")", ; expected -
Tu n'as pas fermé l'accolade de la méthode main avant de définir actionPerformed
La confiance n'exclut pas le contrôle -
merci pour l'aide,
SVP aussi si tu peut m'aider a corriger cette erreur,
voila la ligne qui contient l'erreur
-------------------------------------------------------------
image.setIcon(new ImageIcon(fichier.getPath()));
--------------------------------------------------------------
voila le code d'erreur,
The method setIcon(ImageIcon) is undefined for the type BufferedImage
et si je clique sur l'aide il m'affiche ce code:
-------------------------------------------------------------------
((AbstractButton) image).setIcon(new ImageIcon (fichier.getPath()));
Merci -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
import java.beans.*;
import java.io.File;
import java.io.IOException;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.awt.geom.*;
import java.awt.image.*;
import java.text.*;
import javax.imageio.ImageIO;
import javax.swing.event.*;
import javax.swing.filechooser.FileFilter;
import javax.swing.filechooser.FileNameExtensionFilter;
public class barre_action extends JFrame {
private JToolBar barreBoutons = new JToolBar();
private JFileChooser sélecteur = new JFileChooser("C:/Photos");
private BufferedImage image ;
private double réduction;
private BufferedImage imageOriginale, source ;
private Historique historique = new Historique();
private JPanel editeur = new JPanel();
public barre_action() {
super("Les boîtes de dialogue");
barreBoutons.add(new AbstractAction("Ouvrir", new ImageIcon("D:\\importer.gif")) {
public void actionPerformed(ActionEvent e) {
JFileChooser sélecteur = new JFileChooser();
sélecteur.setFileFilter(new Filtre());
if (sélecteur.showDialog(barre_action.this, "Sélectionner votre image")==JFileChooser.APPROVE_OPTION) {
File fichier = sélecteur.getSelectedFile();
setTitle(fichier.getPath());
editeur.setIcon(new ImageIcon(fichier.getPath()));
}
}
});
barreBoutons.add(new AbstractAction("Enregistrer", new ImageIcon( "D:\\enregitrer.gif" )) {
public void actionPerformed(ActionEvent e) {
if (sélecteur.showSaveDialog(barre_action.this)==JFileChooser.APPROVE_OPTION) {
try {
File fichier = sélecteur.getSelectedFile();
ImageIO.write((RenderedImage) image.getRaster(), "JPEG", fichier);
}
catch (IOException ex) {
setTitle("Problème d'enregistrement de fichier");
}
}
}
});
barreBoutons.add(new AbstractAction("Réglage", new ImageIcon( "D:\\reglage.gif" ))
{
public void actionPerformed(ActionEvent e) {
}
});
barreBoutons.add(new AbstractAction("Zoomer", new ImageIcon( "D:\\zoomer.gif"))
{
public void actionPerformed(ActionEvent e) {
String valeur = JOptionPane.showInputDialog("Nouvelle largeur de l'image ?", 1024);
réduction = Double.parseDouble(valeur)/imageOriginale.getWidth();
source = new BufferedImage((int)(imageOriginale.getWidth()*réduction), (int)(imageOriginale.getHeight()*réduction), imageOriginale.getType());
AffineTransform retailler = AffineTransform.getScaleInstance(réduction, réduction);
int interpolation = AffineTransformOp.TYPE_NEAREST_NEIGHBOR;
AffineTransformOp retaillerImage = new AffineTransformOp(retailler, interpolation);
retaillerImage.filter(imageOriginale, source);
copieSourceImage();
historique.ajout("changerTaille");
}
}
);
barreBoutons.add(new AbstractAction("img_principale", new ImageIcon( "D:\\img_principale.gif" ))
{
public void actionPerformed(ActionEvent e) {
}
});
barreBoutons.add(new AbstractAction("Imprimer", new ImageIcon( "D:\\imprimer.gif"))
{
public void actionPerformed(ActionEvent e) {
}
});
barreBoutons.add(new AbstractAction("Help", new ImageIcon( "D:\\Help.gif" ))
{
public void actionPerformed(ActionEvent e) {
}
});
barreBoutons.add(new AbstractAction("Quitter", new ImageIcon( "D:\\quitter.gif" ))
{
public void actionPerformed(ActionEvent e) {
}
});
add(editeur);
barreBoutons.setBounds(0, 0, 800, 600);
add(BorderLayout.NORTH, barreBoutons);
setSize(400, 380);
setDefaultCloseOperation(EXIT_ON_CLOSE);
setVisible(true);
}
private void copieSourceImage() {
this.image = new BufferedImage(source.getWidth(), source.getHeight(), source.getType());
Graphics2D dessin = this.image.createGraphics();
dessin.drawImage(source, null, null);
repaint();
}
public void sauvegarder() throws IOException {
BufferedImage transfert;
String fichier = JOptionPane.showInputDialog("Nom du fichier ?", "image.jpg");
if (historique.existe("changerTaille")) {
transfert = new BufferedImage((int)(imageOriginale.getWidth()*réduction), (int)(imageOriginale.getHeight()*réduction), imageOriginale.getType());
AffineTransform retailler = AffineTransform.getScaleInstance(réduction, réduction);
int interpolation = AffineTransformOp.TYPE_BICUBIC;
AffineTransformOp retaillerImage = new AffineTransformOp(retailler, interpolation);
retaillerImage.filter(imageOriginale, transfert);
} }
private class Filtre extends FileFilter {
@Override
public boolean accept(File fichier) {
return fichier.getName().toLowerCase().endsWith(".gif") || fichier.isDirectory();
}
@Override
public String getDescription() {
return "Images GIF";
}
}
public static void main(String[] args) { new barre_action(); }
} -
Merci pour l'aide, elle ca marche,
maintenant il me reste une méthode qui me permet de changer la taille de l'image ( agrandir et minimiser) et une méthode pour rendre l'image noir blanc.-
Regarde ReplicateScaleFilter et RGBImageFilter... ou Google.
-