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

 Java Discussion :

Bouton et souris


Sujet :

Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Août 2010
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2010
    Messages : 11
    Par défaut Bouton et souris
    Bonjour;

    Encore une fois je me tourne vers vous pour un problème qui, je pense, vous en dira beaucoup sur mon niveau.

    Mon problème est le suivant:

    Je veux afficher un bouton normal, et qu'il change de couleur quand on clique dessus ou qu'on rentre dessus, en gros pour chaque évenement de l'interface MouseListener.

    Voila ou j 'en suis:
    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
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
     
     
    public class Bouton extends JButton implements MouseListener{
    	private String name;
     
    	public Bouton (String str){
    		super(str);
    		this.name = str;
    		this.addMouseListener(this);
    	}
     
    	public void paintComponent(Graphics g){
     
    		g.setColor(Color.red);
    		g.fillRect(0, 0, getWidth(), getHeight());
    		g.setColor(Color.white);
    		g.drawString(this.name,this.getWidth()/2,this.getHeight()/2);
    	}
     
    	@Override
    	public void mouseClicked(MouseEvent e) {
    		// TODO Auto-generated method stub
     
     
    	}
     
     
     
    	@Override
    	public void mouseEntered(MouseEvent e) {
    		// TODO Auto-generated method stub
     
     
     
     
    	}
     
    	@Override
    	public void mouseExited(MouseEvent e) {
    		// TODO Auto-generated method stub
     
    	}
     
    	@Override
    	public void mousePressed(MouseEvent e) {
    		// TODO Auto-generated method stub
     
    	}
     
    	@Override
    	public void mouseReleased(MouseEvent e) {
    		// TODO Auto-generated method stub
     
    	}
     
    }
    Donc au début mon bouton est blanc avec une ecriture rouge, et je souhaiterais d'une manière simple changer cette couleur selon la méthode.

    Un grand merci à tout ceux qui m'apporteront un peu de lumière.

    Merci

  2. #2
    Membre Expert Avatar de Ivelios
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juillet 2008
    Messages
    1 031
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 031
    Par défaut
    Pour répondre à ta question en reprenant ta classe :
    Crée une variable de classe :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    private Color couleur = Color.red;
    Utilise cet attribut dans paintComponent :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    public void paintComponent(Graphics g){
     
    		g.setColor(couleur);//<-- ICI
    		g.fillRect(0, 0, getWidth(), getHeight());
    		g.setColor(Color.white);
    		g.drawString(this.name,this.getWidth()/2,this.getHeight()/2);
    	}
    Pour finir dans chacune des méthode du mouselistener tu modifie couleur et tu repaint. Exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    public void mouseEntered(MouseEvent e) {//Quand la souris survole le boutton.
    this.couleur = Color.YELLOW;
    this.repaint();
    }
    Après si j'avais du le faire, je n'aurais pas redéfinie paintcomponent puisque que les méthodes setBackground(Color c) et setForeground(Color c) existe déjà

  3. #3
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Août 2010
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2010
    Messages : 11
    Par défaut
    Super.
    Un grand merci pour ta réponse c'est parfait.

    Et effectivement c'est encore mieux avec la méthode setBackground.

    Donc encore merci et un "Resolu" en ton honneur.

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

Discussions similaires

  1. [Débutant] bouton de souris
    Par bourinator dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 19/05/2009, 19h38
  2. configurer bouton milieu souris
    Par Tex-Twil dans le forum Windows XP
    Réponses: 2
    Dernier message: 09/05/2007, 19h53
  3. Problèmes boutons de souris
    Par omgirl dans le forum Sécurité
    Réponses: 4
    Dernier message: 17/07/2006, 14h56
  4. [Souris] Associer un bouton de souris
    Par GLDavid dans le forum AWT/Swing
    Réponses: 4
    Dernier message: 26/01/2006, 09h44
  5. [JTextArea] bouton gauche souris
    Par let_me_in dans le forum AWT/Swing
    Réponses: 4
    Dernier message: 05/01/2006, 17h48

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