BufferedImage dans un JPanel

Signaler
Messages postés
10
Date d'inscription
mardi 10 mars 2009
Statut
Membre
Dernière intervention
21 avril 2009
-
cs_Chatbour
Messages postés
764
Date d'inscription
jeudi 27 juillet 2006
Statut
Membre
Dernière intervention
6 septembre 2010
-
Bonjour,

je reçois une image via le réseau sous forme d'un tableau de byte. Je suis entrain de transformer ce tableau de byte en un BufferedImage pour redessiner cette image dans un jPanel.
J'ai pas réussis à la redessiner et je suis certain que je suis entrain de reçevoir l'image car j'ai arrivé à la stoquer dans le poste de reception.

Merci de me répondre.
Cordialement

4 réponses

Messages postés
764
Date d'inscription
jeudi 27 juillet 2006
Statut
Membre
Dernière intervention
6 septembre 2010
16
Salut,

comment essayes-tu de dessiner l'image ? par surcharge de la méthode paint en principe n'est-ce pas ?
je pose la question parce que tu n'as pas posté la partie du code qui ne marche pas..
Messages postés
38
Date d'inscription
jeudi 27 décembre 2007
Statut
Membre
Dernière intervention
16 avril 2009

Merci bien de votre part,

Je suis pas en train de surcharger la méthode paint. et je me suis perdu. Voici mon code:

           byte[] result = port.getImage();
           BufferedImage image = ImageIO.read(new ByteArrayInputStream(result));
           Graphics g = image.createGraphics();
           jPanel1.paint(g);
           jPanel1.repaint();

Merci bien de me répondre.
Cordialement.
Messages postés
764
Date d'inscription
jeudi 27 juillet 2006
Statut
Membre
Dernière intervention
6 septembre 2010
16
de rien,

voici comment je serais à ta place :

public class ImagePanel extends JPanel {

  /* L'image qui sera affichée */
  private Image img;

  /* Constructeur */
  public ImagePanel(Image img) {
    this.img = img;
  }

  /* Surcharge de la méthode paint */
  public void paint(Graphics g) {
    g.drawImage(g, 0, 0, null);
  }

}

tu peux créer l'image à partir du tableau de bits grâce à la classe Toolkit..

cette conception serait meilleure si tu comptes réutiliser l'objet ImagePanel, et en plus ça te permet d'encapsuler le code nécessaire pour l'affichage, et peut être du traitement, de l'image..

bonne continuation.
Messages postés
764
Date d'inscription
jeudi 27 juillet 2006
Statut
Membre
Dernière intervention
6 septembre 2010
16
pardon pour la faute "
voici comment je serais à ta place :
"

, je voulais dire : voici comment je ferais à ta place ^^

j'ajoute que mon code n'était qu'un exemple et bien sûr tu peux ajouter ce que tu veux : le plus évident serait un autre constructeur qui prend en paramètre un tableau de bits..