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 :

Pb de couleur lors du survol d'un JmenuItem


Sujet :

AWT/Swing Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    62
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Septembre 2004
    Messages : 62
    Par défaut Pb de couleur lors du survol d'un JmenuItem
    Bonjour,

    Actuellement je développe une appli classique d'un point de vue graphique. Et je rencontre un problème pour ma barre de menu

    J'ai regardé un peu partout, mais je n'ai trouvé que des topics en relation à la construction de menubar

    Les menu & menuitem sont par defaut : fond blanc et texte noir.

    Lorque je survole un menu, il passe en fond gris et texte gris.
    Mais lorsqu'il s'agit d'un menuitem, il passe en fond noir, texte noir --> pas super :o

    En gros, lorsque je change le setForeground du menuitem, il me change bien la couleur du texte mais aussi du highlight (alors que pour le menu pas de problème)

    J'aimerais donc savoir si il a un moyen pour "colorier" le highlight ?

    Merci par avance

    Bonen journée à vous

  2. #2
    Membre Expert
    Avatar de xavlours
    Inscrit en
    Février 2004
    Messages
    1 832
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 1 832
    Par défaut
    Bonjour,
    je crois qu'il faut tester avec hasFocus() si le menuItem est highlighté, avant de lui appliquer la couleur voulue.
    "Le bon ni le mauvais ne me feraient de peine si si si je savais que j'en aurais l'étrenne." B.V.
    Non au langage SMS ! Je ne répondrai pas aux questions techniques par MP.
    Eclipse : News, FAQ, Cours, Livres, Blogs.Et moi.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    62
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Septembre 2004
    Messages : 62
    Par défaut
    En fait j'ai déja essayé avec hasfocus(), mais il retourne toujours false...

    De même si je pause un focusListener sur le menuItem--> rien

    Je pensais que cela provenais du look and feel que j'ai téléchargé, mais si j'en prend un par defaut, j'ai lê même problème.

    Voici un bout de code de ma création de ma barre :
    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
     
    public void barreMenu() {  
    mb = new JMenuBar ();        
    mnuFichier = new JMenu("Fichier"); 
    mnuItemQuit = new JMenuItem("Quitter"); 
     
    mnuFichier.addChangeListener( new ChangeListener(){ 
       public void stateChanged(ChangeEvent arg0){ 
          System.out.println(arg0.toString() ); 
          System.out.println(arg0.getSource()); 
          System.out.println( mnuFichier.hasFocus() ); 
       } 
    }); 
     
     
    mnuFichier.addFocusListener(new FocusListener() { 
       public void focusGained(FocusEvent arg0) { 
          System.out.println("AA " + mnuFichier.hasFocus() );             
       } 
     
       public void focusLost(FocusEvent arg0) { 
          System.out.println("AA " +mnuFichier.hasFocus() );             
       }            
    }); 
     
    mnuFichier.addChangeListener( new ChangeListener(){ 
       public void stateChanged(ChangeEvent arg0) { 
          System.out.println(arg0.toString() ); 
          System.out.println(arg0.getSource()); 
          System.out.println( mnuFichier.hasFocus() ); 
       } 
    });    
     
    mnuFichier.add(mnuItemQuit); 
    mb.add(mnuFichier); 
    }

    Les tests sont bidons, mais bon c pour avoir des pistes

  4. #4
    Membre Expert
    Avatar de xavlours
    Inscrit en
    Février 2004
    Messages
    1 832
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 1 832
    Par défaut
    La je suis un peu perdu. Quand ce devient comme ca, en général, je remove tous les listeners, et je me fais ma sauce. C'est un peu bourrin mais ca marche.

    Il te faudra : un MouseListener pour capter mouseEntered et mouseExited et un ActionListener pour le clic. Voila . Il y a surement mieux.
    "Le bon ni le mauvais ne me feraient de peine si si si je savais que j'en aurais l'étrenne." B.V.
    Non au langage SMS ! Je ne répondrai pas aux questions techniques par MP.
    Eclipse : News, FAQ, Cours, Livres, Blogs.Et moi.

Discussions similaires

  1. Réponses: 18
    Dernier message: 31/05/2015, 11h06
  2. Réponses: 5
    Dernier message: 06/09/2012, 15h50
  3. Changer la couleur d'un bouton lors du survol.
    Par DetoX dans le forum Mise en page CSS
    Réponses: 4
    Dernier message: 15/05/2009, 20h49
  4. Afficher une image lors du survol d'une autre
    Par StarMusic dans le forum Composants VCL
    Réponses: 5
    Dernier message: 22/06/2005, 12h19
  5. [Débutant] Conserver la couleur lors d'un copier coller
    Par ADIDASman dans le forum JBuilder
    Réponses: 2
    Dernier message: 21/05/2003, 18h13

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