IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

AWT/Swing Java Discussion :

prob d'affichage d'une Icone dans un JButton


Sujet :

AWT/Swing Java

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Janvier 2006
    Messages : 11
    Points : 6
    Points
    6
    Par défaut prob d'affichage d'une Icone dans un JButton
    Bonjour,
    j'essaie de créer un JButton qui affichera du texte et une icone, voici mon code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    		btAchat = new JButton("Acheter",new ImageIcon("arrowG2.gif"));
    		btAchat.setHorizontalAlignment(SwingConstants.CENTER);
    		btAchat.setMaximumSize(new Dimension(100,28));
    		btAchat.setMinimumSize(new Dimension(100,28));
    		btAchat.setActionCommand("achat");
    		btAchat.addActionListener(this);
    je n'ai pas d'erreur ni à la compil ni à l'exec, mais l'icone ne s'affiche pas, j'ai redimensionné mon bouton pour qu'il soit très gros (400x100), mais rien n'y fait l'icone ne veut pas s'afficher

    quelqu'un peut-il m,aider??
    merci à l'avance
    Jean-Pierre[/b]

  2. #2
    Membre actif Avatar de aDamas
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    260
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Décembre 2004
    Messages : 260
    Points : 288
    Points
    288
    Par défaut
    Es-tu sur de l'adresse de ton icône?
    Il se trouve bien à la racine de ton dossier de classes?

  3. #3
    Membre averti Avatar de let_me_in
    Inscrit en
    Mai 2005
    Messages
    441
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 441
    Points : 437
    Points
    437
    Par défaut
    met le chemin d'acces complet de ton icon, comme l'a dit aDams,
    et n'oublis pas que tu dois doubler le separateur.
    par ex, si ta photo est dans c:\dossier\arrowG2.gif
    tu met
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    btAchat = new JButton("Acheter",new ImageIcon("c:\\dossier\\arrowG2.gif"));
    qui dit Dieu n'existe pas dis que les programmes tournent sans processeur.

  4. #4
    Membre éclairé Avatar de Pollux
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    706
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2005
    Messages : 706
    Points : 680
    Points
    680
    Par défaut
    Ou alors mettre l'image dans le dossier de classes afin que l'application soit portable
    Pour chaque langage existe une faq / N'oubliez pas de lire les règles du forum

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Janvier 2006
    Messages : 11
    Points : 6
    Points
    6
    Par défaut C'est quoi le dossier de classes?
    Merci pour les infos, mais c'est quoi le dossier de classes? actuellement le fichier est dans le même dossier que la classe qui elle est dans un package,

  6. #6
    Membre habitué
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2005
    Messages
    201
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2005
    Messages : 201
    Points : 173
    Points
    173
    Par défaut
    le dossier des classe c la bas ou tu met tes classe(tes programme), il feut que tu met l'image dans le dossier où est ton programme et tu met tout simplement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    boutton= new JButton("boutton", new ImageIcon("./image.gif"));
    comme le compleur va chercher où tes programme sont enregistrés.

  7. #7
    Membre habitué
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2005
    Messages
    201
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2005
    Messages : 201
    Points : 173
    Points
    173
    Par défaut
    Citation Envoyé par charaf
    comme le compleur va chercher où tes programme sont enregistrés.
    je veut dire :
    comme ca le compileur va chercher l'image où tes programmes sont enregistrés.

  8. #8
    HNT
    HNT est déconnecté
    Membre actif Avatar de HNT
    Profil pro
    Étudiant
    Inscrit en
    Juin 2005
    Messages
    448
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2005
    Messages : 448
    Points : 293
    Points
    293
    Par défaut
    Tu peut faire ceci (testé et fonctionnel)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ImageIcon icone1 = new ImageIcon("arrowG2.gif");
    JButton connect = new JButton("Acheter", icone1);
    Le dossier racine est la base de ton projet exemple:

    Suppose que tu travaille dans C:\Java\Projet1\...
    La racine du projet est C:\Java\Projet1\, cela veut-dire que dans ton code tu ne pas accéder directement à quelque chose dans C:\Java\ mais par contre tu peut accéder à tous les dossiers dans C:\Java\Projet\ex1 (par exemple)
    Ce qu'on voulait te dire c'est que ton
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    btAchat = new JButton("Acheter",new ImageIcon("arrowG2.gif"));
    Ne marchera qu'a condition que arrowG.gif ne soit dans C:\Java\Projet1\ (dans l'exemple) si l'icone est dans le dossier ex1 tu devrait mettre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    btAchat = new JButton("Acheter",new ImageIcon("ex1"+separatorChar+"arrowG2.gif"));
    Tu pourrais mettre directement "ex1\arrowG.gif" mais c'est déconseiller parce-que tout les systèmes UNIX on des arborescence avec des slashs pas des back-slashs, donc si tu fait ça tu perd la portablilitée du code. Dans l'exemple la variable separatorChar est donnée par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    public static final char separatorChar = File.separatorChar;
    PS : Pour accéder à la classe File, tu dois importer java.io.*;
    The box said : "Requires windows 95, NT or better" so I installed Linux.

Discussions similaires

  1. Réponses: 0
    Dernier message: 11/06/2013, 07h17
  2. [PPT-2010] Prob affichage d'une police dans diaporama
    Par spinat dans le forum Powerpoint
    Réponses: 3
    Dernier message: 02/01/2013, 12h03
  3. [problème] affichage d'une image dans un JButton
    Par shadowpath dans le forum Composants
    Réponses: 3
    Dernier message: 16/06/2008, 09h20
  4. Réponses: 4
    Dernier message: 18/04/2004, 13h36
  5. Afficher une icone dans DBgrid
    Par boyerf dans le forum Bases de données
    Réponses: 4
    Dernier message: 29/02/2004, 15h45

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo