JIMAGEPANEL : UN PANEL AFFICHANT DES IMAGES REDIMENSIONNÉES AVEC LE MÊME ASPECT

Horfee Messages postés 188 Date d'inscription mercredi 9 avril 2003 Statut Membre Dernière intervention 10 août 2009 - 12 avril 2007 à 02:51
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 - 21 juin 2009 à 18:46
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/42125-jimagepanel-un-panel-affichant-des-images-redimensionnees-avec-le-meme-aspect-ou-etiree

cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
21 juin 2009 à 18:46
Vérifie que tu n'as pas une exception qui est déclenché : est-ce que le fichier est correct ? Est-ce que les espaces dans le nom du fichier ne posent pas problème ?

De toute façon, ta façon de faire n'est pas la bonne : ca ne marchera que tant que le fichier existera, et qu'il sera placé sur le bureau du user "Administrateur" => gros risque qu'un beau jour le fichier soit supprimé ou déplacé.

Privilégie une image contenue dans le jar de ton application : beaucoup plus sûr !
achora2006 Messages postés 26 Date d'inscription samedi 20 juin 2009 Statut Membre Dernière intervention 26 juillet 2009
21 juin 2009 à 15:12
bonjour j'ai essayer d' utiliser ton code mais ça ne marche pas pour moi aucune image ne s'affiche
est ce que l'image doit être dans le même dossier que mon projet
voici le code ou j'ai fais l'appel à ta classe

------------------------------------------------------------
import java.awt.Image;
import java.io.File;
import java.io.IOException;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.imageio.ImageIO;

public class NewJFrame extends javax.swing.JFrame {

File file = new File("C:/Documents and Settings/Administrateur/Bureau/me.JPG");
Image image ;
JImagePanel i= new JImagePanel();

/** Creates new form NewJFrame */
public NewJFrame() {
initComponents();
try {
image = ImageIO.read(file);
} catch (IOException ex) {
Logger.getLogger(NewJFrame.class.getName()).log(Level.SEVERE, null, ex);
}

i.setImage(image);
i.setX(20);
i.setY(30);
this.add(i);
}
---------------------------------------------------------------------------

Merci
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
12 avril 2007 à 06:53
C'est vrai que c'est un point dont j'ai pas réfléchi !

Pour ce qui est de l'affichage en mosaïque : je n'en voyais pas l'intérêt pour l'utilisation que j'en ai, mais ca doit pas être grand chose à faire (tout comme faire un zoom par exemple).

DarK Sidious
Horfee Messages postés 188 Date d'inscription mercredi 9 avril 2003 Statut Membre Dernière intervention 10 août 2009
12 avril 2007 à 02:51
Hey,
Me suis fait un petit composant pareil...mais sans la possibilité de déplacer l'origine de l'image. Par contre g donné la possibilité en plus de mettre l'image en mosaique...
Par contre, il y a juste un petit souci : JPanel est serializable, et si tu enregistre l'image telle qu'elle elle va prendre énormément de place... moi je l'ai rendu transient histoire de mais bon... toi dans ton cas je pense qu'il y a moyen de faire mieux en serialisant le fichier...(je ne sais pas ce que ca donne ca par contre)
Rejoignez-nous