Maison > Java > javaDidacticiel > Comment puis-je afficher des images à partir d'un fichier JAR dans une application Java Swing ?

Comment puis-je afficher des images à partir d'un fichier JAR dans une application Java Swing ?

DDD
Libérer: 2024-12-07 19:53:18
original
522 Les gens l'ont consulté

How Can I Display Images from a JAR File in a Java Swing Application?

Récupération d'images à partir de fichiers Jar dans Java Swing

Problème :

Lors de l'exécution d'une application Java dans l'environnement de développement Eclipse, les images sont affichées avec succès à l'aide d'ImageIcon. Cependant, lors du packaging de l'application dans un JAR, le chemin de l'image devient corrompu.

Questions :

  • Les images peuvent-elles être extraites d'un JAR au moment de l'exécution pour des fins ultérieures. display ?
  • Existe-t-il des approches alternatives pour résoudre ce problème tout en conservant un seul fichier JAR distribution ?

Réponse :

Pour résoudre ce problème, utilisez les techniques suivantes :

  • Création d'une icône d'image à partir d'une image JAR :

Pour construire une ImageIcon à partir d'une image à l'intérieur le même JAR que le code chargé :

new javax.swing.ImageIcon(getClass().getResource("myimage.jpeg"))
Copier après la connexion

getClass().getResource renvoie une URL pour la ressource spécifiée ou null si aucune ressource n'est trouvée. ImageIcon a un constructeur qui accepte une entrée URL pour le chargement de l'image.

  • Création d'une URL pour une ressource JAR :

Si la ressource souhaitée est stocké dans un JAR au-delà du « chemin de classe », suivez l'approche décrite dans la documentation de java.net.JarURLConnection. Ce processus implique la construction d'un objet URLConnection et l'accès à la ressource via son flux d'entrée.

En utilisant ces techniques, vous pouvez conserver les avantages de la distribution de fichiers JAR uniques tout en récupérant et en affichant efficacement les images à partir des fichiers JAR.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal