begin process at 2012 02 15 14:32:39
  Trouver un code source :
 
dans
 
Accueil > Forum > 

JAVA / J2EE / J2ME

 > 

Multimédia

 > 

Java2D

 > 

[debutant] image dans un jar


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

[debutant] image dans un jar

mardi 25 décembre 2007 à 12:53:53 | [debutant] image dans un jar

jeremeclip

bonjour voici mon probleme. Je viens de faire une petite application donc dans cette application je doit avoir une image de fond et par dessu j'ia des bouton tranparent donc tout marche quand je lance l'application avec eclipse mais dans que je le lance dans un jar executable impossible d'avoir l'image

voici le code de l'application
il ya peut etre une fautes ou je n'utilise peut etre pas bien une fonstion de java pour inserer une image

Code :
 
 
import java.awt.*;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
 
import javax.imageio.ImageIO;
import javax.print.DocFlavor.URL;
import javax.swing.*;
 
 
publicclass Menu {

//Déclaration des boutons et du Panel
JPanel Menu;
JPanel bouton;
JButton Connection;
JButton Enregistrer;
JButton Aide;
JButton Option;
JButton Quitter;
 
Menu()throws IOException {
 
Menu = new JPanel();

//Afecte un gestionnaire de présentation a ce panneau
BorderLayout disposition = new BorderLayout();
Menu.setLayout(disposition);

//Crée les bouton en utilisant le constructeur de la classe
//JButton qui prend en paramètre le libellé du bouton
Connection = new JButton("");
Enregistrer = new JButton("");
Aide = new JButton("");
Option = new JButton("");
Quitter = new JButton("");

JFrame frame = new JFrame("History And Futury");
frame.setContentPane(Menu);

//les different option de la frame
frame.setDefaultCloseOperation(frame.EXIT_ON_CLOSE);
//rend la frame visible
frame.setVisible(true);
//affiche l'image
frame.add(new Zone());
//donne les mesure de la Frame
frame.setBounds(500,280,347,457);



Menu.setLayout(null);
//enregistrer mes bouton dans le panneau menu
Menu.add(Connection);
Menu.add(Enregistrer);
Menu.add(Aide);
Menu.add(Option);
Menu.add(Quitter);
//Positionne les bouton a l'endroit indiquer
Connection.setBounds(55, 123, 220, 30);
Enregistrer.setBounds(55, 180, 220, 30);
Aide.setBounds(55, 239, 220, 30);
Option.setBounds(55, 296, 220, 30);
Quitter.setBounds(55, 353, 220, 30);

//rend les boutons invisible a l'oeil mais reste actif
Connection.setContentAreaFilled(false);
Enregistrer.setContentAreaFilled(false);
Aide.setContentAreaFilled(false);
Option.setContentAreaFilled(false);
Quitter.setContentAreaFilled(false);

moteur_Menu moteurCalcul = new moteur_Menu(this);
Connection.addActionListener(moteurCalcul);

}

 
publicstaticvoid main(String[] args)throws IOException {
Menu me = new Menu();
}
 
}
 
class Zone extends JComponent{
private BufferedImage image;
public Zone()throws IOException {

image = ImageIO.read(new File("Menu.png"));
}
public Zone(BufferedImage image){
this.image = image;
}
protectedvoid paintComponent(Graphics surface){
surface.drawImage(image, 0, 0, 340, 425, null);
}

}
 

voila le code merci de m'aider car si j'arrive pas faire cette peitit appication je ne pourrias pas continuer le restede ce projet
mardi 25 décembre 2007 à 15:19:09 | Re : [debutant] image dans un jar

Ombitious_Developper

Salut:

Utilises la méthode getResourceAsStream() qui est méthode des deux classes Class ou ClassLoader.
mardi 25 décembre 2007 à 15:43:15 | Re : [debutant] image dans un jar

jeremeclip

et pour l'utiliser je doit la placer ou dans mon code et je dois supprimer ou quoi?
mardi 25 décembre 2007 à 16:58:52 | Re : [debutant] image dans un jar

Ombitious_Developper

Salut:

Il y a plusieurs façons pour exploiter la méthode getResourceAsStream(), vu que tu utilises des objets de la classe BufferedImage, tu peux procéder ainsi:

/**
 * Cette classe charge une image qui se situe relativement
 * à une classe donnée.
 */

public class JarImageLoader {
    public static BufferedImage getImage(Class cls, String filename) {
       try {
          return ImageIO.read(cls.getResourceAsStream(filename));
       }
       catch (Throwable e) {
          return null;
       }
    }
}


Supposons qu'auprès de la classe Toto il y a une image "image.png":

BufferedImage bi = JarImageLoader.getImage(Toto.class, "image.png");
mardi 25 décembre 2007 à 17:45:38 | Re : [debutant] image dans un jar

jeremeclip

si j'ai bien compris je met 

**
 * Cette classe charge une image qui se situe relativement
 * à une classe donnée.
 */

public class JarImageLoader {
    public static BufferedImage getImage(Class cls, String filename) {
       try {
          return ImageIO.read(cls.getResourceAsStream(filename));
       }
       catch (Throwable e) {
          return null;
       }
    }
}

dans une nouvelle page  dans eclipse

et ceci

BufferedImage bi = JarImageLoader.getImage(Toto.class, "image.png");

dans le code qui ets site plus haut

c'est sa ?

mardi 25 décembre 2007 à 19:34:00 | Re : [debutant] image dans un jar

Ombitious_Developper

Salut:

Notre professeur Mme Najjar disait toujours: "Il faut apprendre les bonnes manières".

Lorsqu'on developpe une application (Java ou autre) il faut bien diviser les différentes unités fonctionnelles de ton application en plusieurs packages.

Dans notre cas, il vaut mieux créer un package pour les classes utilitaire [Helper Classes] qui sont les classes à usage général et qui peuvent être utiliser dans les future projets, c'est dans ce package que tu peux mettre cette nouvelle classe [JarImageLoader].

Puis, chaque fois que tu aura besoin de cette classe tu fais l'appel de la méthode en question.

Bye.


Cette discussion est classée dans : menu, image, frame, import, jbutton


Répondre à ce message

Sujets en rapport avec ce message

Bouton créant un bouton [ par kanagan ] Bonjour, Voilà, j'ai un petit problème, je veux créer un bouton qui, lorsque l'on clique dessus, crée un autre bouton. Cependant je n'arrive pas à af Changer couleur image avec souris [ par moreelsc ] Bonjour, J'aimerais créer un petit programme simple: Je crée une fenêtre comportant une image (un simple rectangle rouge). J'aimerais via un MouseLis Changer couleur image avec MouseListener [ par moreelsc ] Bonjour, J'ai crée une fenêtre contenant un rectangle rouge. J'aimerais que lorsque je clic avec ma souris le triangle devienne vert. Dans mon program ecouteurs d'evenement [ par hiera ] Bonjour,J'ai une frame dans laquelle il y a une image et d'autres composant. J'aimerai mettre un écouteur d'évènement sur l'image de façon à pouvoir:- mouvement d'un jlabel [ par lamia88 ] bonjours, jai crée un jlable nommé label2,et je veut modifier ca place,jai utilisée setbounds mais sa ne fonctionne pas. qulqun peut maider et merci d ajouter menu sur JToolBar [ par ulysse00 ] bonsoir tout le monde je vous demande comment ajouter jmenuitem sur JToolBar par exemple si je click sur le bouton de JToolBar alors un menu s'ouvre ajouter plusieurs ActionListener dans un meme fenetre qui appels différent JPanel [ par djraf ] salut a tous mon problème c'est que lorsque je clique sur un bouton dont je l'ai donnée un évènement m'affiche un erreur voila mon code : package au Insertion d'une image dans un JComponent [ par daustgui ] Bonjour, J'aimerai simplement afficher une image dans ma classe (qui étends JComponent), mais j'ai pas trouver la solution à mon problème. Le but de affichage dynamique et périodique d'images dans une jsp à partir d'une servlet [ par coccolata ] bonsoir, je débute avec tomcat et les servlets..et voila la galère commence!!! dans un autre post ils m'ont affirmé la faisabilté de ce que je compte JMF - prise image webcam [ par MBoughaba ] Bonjour, mon API consiste à prendre des image de ma webcam. mon api marche très bien quand cela est fait en passant par un jButton et un actionListen


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,468 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales