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

Composants Java Discussion :

background sur jbutton avec texte


Sujet :

Composants Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2008
    Messages
    227
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2008
    Messages : 227
    Par défaut background sur jbutton avec texte
    Bonjour à tous

    Je cherche depuis un moment déjà à créer un bouton avec une image en background. Ce que je voudrais c'est que le texte du bouton puisse changer suite à un clic. Mon problème est que je n'arrive pas à faire un bouton avec un background composé d'une image et un texte par dessus.

    J'ai essayé pas mal de truc mais rien ne marche.
    Je précise que je voudrais également que les dimensions de mon bouton correspondent à celles de l'image.

    Voici le code actuel
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    import java.awt.Graphics;
    import java.awt.Image;
     
    import javax.swing.JButton;
     
     
    public class MonJButton extends JButton{
     
    	private static final long serialVersionUID = 1L;
    	private Image backGround = null;
     
    	public MonJButton(Image backGround){
    		this.backGround = backGround;
    		this.setOpaque(false);
    	}
     
    	public void paint(Graphics g){
    	if ( backGround != null ){
    		g.drawImage(backGround, 0, 0, null);
    	}
    	super.paint(g);
    	}
    }
    et le code pour créer les boutons

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Image  icon = loadImages(string);
    		final MonJButton b = new MonJButton(icon);
    		JPanel support = new JPanel ();
    		support.add(b);
     
    		b.addActionListener(new ActionListener(){
    			public void actionPerformed(ActionEvent arg0) {
    				b.setText(b.getText()+" X");
    			}
    		});
    et la méthode de chargement d'une image

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    private Image loadImages(String imageFile ){
    		try{
    			MediaTracker mTrack = new MediaTracker(f); // load les image avant de les afficher
    //f est la JFrame
    //imageFile est le chemin d'accès de l'image 
    			Image image = f.getToolkit().getImage(imageFile);
    			mTrack.addImage(image, 0);
    			mTrack.waitForAll();
    			return image;
    		}
    		catch (Exception e){
    			System.out.println(" getimages : " + e );
    		}
    		return null;
    	}

  2. #2
    Membre Expert
    Avatar de slim_java
    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2008
    Messages
    2 272
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Septembre 2008
    Messages : 2 272
    Par défaut
    salut.
    voici le code pour répondre au titre de ton poste "background sur jbutton avec texte"

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    ImageIcon icone = new ImageIcon("image.jpg");
            button.setIcon(icone);
    button.setText("texteBouton");

  3. #3
    Membre éclairé
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2008
    Messages
    227
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2008
    Messages : 227
    Par défaut
    Salut,

    le code que tu me conseilles produit un bouton avec une image ET un texte.
    Ce qui m'intéresse, c'est d'avoir un texte SUR une image.

    Merci quand même de ta réponse, mais ce n'est pas aussi simple, bien que cela m'aurait bien fait plaisir

    Alors une autre idée?

  4. #4
    Membre Expert
    Avatar de slim_java
    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2008
    Messages
    2 272
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Septembre 2008
    Messages : 2 272
    Par défaut
    tu ajoute cette ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    button.setHorizontalTextPosition(SwingConstants.CENTER);
    Citation Envoyé par tanguy.L Voir le message

    Alors une autre idée?

    mettre le texte sur ton image avec un logiciel de dessin et ajouter ton image à ton bouton

  5. #5
    Membre éclairé
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2008
    Messages
    227
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2008
    Messages : 227
    Par défaut
    Cela marche beaucoup mieux, merci beaucoup...

    Les réponses les plus simples sont toujours les meilleures.

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

Discussions similaires

  1. JButton avec image background et texte.
    Par SuperCoquillette dans le forum Interfaces Graphiques en Java
    Réponses: 1
    Dernier message: 26/05/2011, 09h27
  2. JButton avec image comme background
    Par ferrero dans le forum AWT/Swing
    Réponses: 11
    Dernier message: 15/08/2006, 02h14
  3. [FLASH 8] Pb sur bouton avec texte dynamique
    Par iceman2001 dans le forum Flash
    Réponses: 11
    Dernier message: 27/06/2006, 12h58
  4. [FLASH MX] Soucis avec text sur banniere flash
    Par BeRoots dans le forum Flash
    Réponses: 14
    Dernier message: 11/03/2006, 13h38
  5. [JButton] Background non coloré avec LnF Windows
    Par leminipouce dans le forum Composants
    Réponses: 7
    Dernier message: 03/10/2005, 13h48

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