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

Eclipse Platform Discussion :

Image sur un bouton SWT


Sujet :

Eclipse Platform

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    164
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 164
    Par défaut Image sur un bouton SWT
    Bonjour,
    Je souhaiterai mettre une image sur un bouton
    Voici la procedure que va chercher le chemin de l'image

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    protected void initializeImageRegistry(ImageRegistry reg) {
    		super.initializeImageRegistry(reg);
    		String root = Platform.getInstallLocation().getURL().getPath();
     
     
    		reg.put("btn1", new Image(Display.getCurrent(), root + "ressources/icons/bdd.png"));
     
     
    		}
    et voici le code du bouton
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    btn1 = new Button(tfm, SWT.PUSH);
    		btn1.setLayoutData(new GridData(GridData.CENTER, GridData.CENTER, false, false));
    		btn1.setToolTipText("btn1");
    		btn1.setImage(configure.Activator.getDefault().getImageRegistry().get("btn1"));
    		btn1.setEnabled(false);
    Quand je lance le programme il me dit que "Le chemin d'accès spécifié est introuvable"

    Auriez vous des solutions ? :s

  2. #2
    Expert confirmé
    Avatar de djo.mos
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    4 666
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 666
    Par défaut
    Salut,
    Est ce que l'image en question est stockée dans un dossier dans le plugin ? auquel cas :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    public static ImageDescriptor getImageDescriptor(String path) {
    		return imageDescriptorFromPlugin(PLUGIN_ID, path);
    	}
     
    	@Override
    	protected void initializeImageRegistry(ImageRegistry reg) {
    		super.initializeImageRegistry(reg);
    		reg.put("id",
    				getImageDescriptor("icons/nom-de-l-image.png"));

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    164
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 164
    Par défaut
    Le dossier qui contient l'image et stocké dans un dossier ressources se dossier et directement dans le projet !!!!

  4. #4
    Expert confirmé
    Avatar de djo.mos
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    4 666
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 666
    Par défaut
    Citation Envoyé par tiph02 Voir le message
    Le dossier qui contient l'image et stocké dans un dossier ressources se dossier et directement dans le projet !!!!
    ok, c'est ce que je disais
    Donc, tu peux utiliser la méthode que je présente dans mon premier post.

    N'oublies pas de cocher le dossier d'images dans la section build de l'éditeur de manifest (dans la liste binary build)

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    164
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 164
    Par défaut
    J'ai deja cette petite methode dans ma classe

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    public static ImageDescriptor getImageDescriptor(String path) {
    		return imageDescriptorFromPlugin(PLUGIN_ID, path);
    	}
    Par contre je n'ai pas trop compris ce que je devais cocher ou et pourquoi !!
    Débutante oblige....
    Désolé

  6. #6
    Expert confirmé
    Avatar de djo.mos
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    4 666
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 666
    Par défaut
    ok.
    Quand tu exporteras tes jars plus tard (en tant que plugins et/ou dans un produit), les images disparaitront comme par magie
    Ca arrive car les dossiers de ces images ne seront pas inclus dans les jars exportés.
    Pour que ces dossiers soient inclus, il faut dire ça à PDE.

    Ouvres le fichier manifest.mf (ou plugin.xml ou build.properties) de ton projet, et loclises l'onglet build.
    En bas à gauche, tu trouveras une liste avec les fochiers/dossiers de ton projet. Coches la case du dossier images.
    C'est tout

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [SWT]image ET text sur un bouton SWT
    Par piwai dans le forum SWT/JFace
    Réponses: 14
    Dernier message: 04/10/2006, 15h41
  2. mettre une image sur un bouton de commande
    Par delamarque dans le forum VB 6 et antérieur
    Réponses: 9
    Dernier message: 05/01/2006, 20h18
  3. [MFC] image sur un bouton
    Par mfrai02 dans le forum MFC
    Réponses: 6
    Dernier message: 24/05/2005, 14h42
  4. [wxpython][wx.frame] mettre une image sur un bouton
    Par Kyti dans le forum wxPython
    Réponses: 7
    Dernier message: 02/05/2005, 12h13
  5. [JBouton] Comment mettre une image sur un bouton ?
    Par Kyti dans le forum Composants
    Réponses: 6
    Dernier message: 11/03/2005, 16h08

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