5/5 (9 avis)
Vue 21 993 fois - Téléchargée 1 691 fois
Insérer des images dans un .jar exécutable Beaucoup de forums tentent d'expliquer comment on peut insérer une image dans un fichier jar exécutable, très peu donnent des informations correctes. Voici une solution simple pour le faire sous Eclipse. 1. Où placer les images ? Il faut placer les images dans un dossier du Build Path. Pour cela : - Click droit sur le projet - Build Path - New Source Folder Et on donne un nom au dossier : ressources, images, icones... Ensuite, on place toutes les images qu'on veut utiliser dans ce dossier. On peut également créer des sous dossiers pour organiser tout ca. Attention, si on veut utiliser une image dans une classe qui se trouve dans le package fr.julien.appli, il faudra que l'image se trouve dans le même package dans le dossier images. L’arborescence sera alors src |_ fr |_ julien |_appli |_ ClasseQuiUtiliseImage.java images |_ fr |_ julien |_appli |_ image.jpg 2. Faire appel à ces images Pour faire appel à ces images, il suffit de faire getClass().getResource(nomImage) où nomImage est le nom de l'image. On ajoutera le nom du sous dossier dans le cas où on en utilise. Un exemple d'utilisation : On créé un Jlabel avec une icône. public class Exemple extends JLabel{ private String nomImage; public Exemple(String nom){ nomImage=nom+".png"; ImageIcon image = new ImageIcon( this.getClass().getResource(nomImage)); setIcon(image); setSize(50,50); } } 3. Créer le .jar exécutable Pour créer le .jar exécutable : - Click droit sur le projet - Export... - dossier Java - Runnable Jar File Ensuite, on sélectionne la classe contenant le main dans Launch Configuration et le fichier de destination dans Lauch Configuration et le tour est joué. Pour ouvrir ce fichier, exécutez le avec java.
26 juil. 2012 à 21:13
Lis ce tutoriel et ça marchera.
25 juil. 2012 à 15:57
import javax.swing.*;
import java.awt.*;
public class test extends JFrame{
Container con=new Container();
JButton b1= new JButton();
JLabel lab1=new JLabel();
public test() {
this.setTitle("dazdaz");
this.setSize(1350,700);
this.setContentPane(con);
this.setVisible(true);
this.setResizable(false);
con.add(lab1);
lab1.setBounds(700,0,350,700);
lab1.setIcon(new ImageIcon(getClass().getClassLoader().getResource("image/1.JPG")));
}
//----------------main------------------------
public static void main (String[]agrs){
test j1=new test();
}
}
25 juil. 2012 à 14:45
1 déc. 2010 à 00:49
25 juin 2010 à 15:44
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.