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 :

[JMenu] Désactivation d'un JMenuItem


Sujet :

Composants Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Profil pro
    Inscrit en
    Février 2004
    Messages
    1 825
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 1 825
    Par défaut [JMenu] Désactivation d'un JMenuItem
    Salut à tous,

    Alors voilà, j'ai un JMenuItem qui affiche du texte biensur, mais aussi une icone. l'icone change (y'en a une verte, et une rouge).
    Pour désactiver le menu, si je fais setEnabled(false), ça grise tout, y compris l'icone.

    Alors j'ai redéfinit la méthode enabled, qui désactive le ActionListener et qui grise le texte.

    Seulement voilà, quand l'utilisateur clic, le menu disparait comme s'il était actif, et je voudrais que quand il clic, ça ai le même comportement que si j'avais pas redéfini la méthode, en gros, que ça fasse rien, mais que ça continu de s'afficher...

    C'est possible ça?

    Merci

  2. #2
    Membre expérimenté

    Profil pro
    Chercheur en informatique
    Inscrit en
    Novembre 2004
    Messages
    130
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Chercheur en informatique

    Informations forums :
    Inscription : Novembre 2004
    Messages : 130
    Par défaut
    Si tu veux que le lorsquer l'on clique sur ton menu ca ne fasse rien tu peux faire removeActionListener(leNomDeTonListener)

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Février 2004
    Messages
    1 825
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 1 825
    Par défaut
    ha nan t'as pas compris

    Je l'ai fait le removeActionListener, mais ça c'est pour virer le traitement de l'action. Nan ce que je veux, c'est redéfinir le comportement du JMenuItem par défaut qui est d'afficher un rectangle de sélection lorsque la souris passe dessus (ça je crois que j'ai vu un truc tout à l'heure pour le faire) mais surtout laisser le menu ouvert même lorsque l'utilisateur clique dessus (comme ça le fait quand l'item est vraiment désactivé).

    A moins qu'il y a possibilité d'afficher l'icone en couleur même quand l'item est désactivé...

  4. #4
    Expert éminent
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Billets dans le blog
    1
    Par défaut
    Salut,


    Si tu surcharge setEnabled() sans appeller la méthode super.setEnabled(), il y a de forte chance que tu ais ce genre de problème...

    Je ne sais pas vraiment si c'est possible mais je pense qu'il faut se trourner vers le ComponentUI de JMenuItem (ButtonUI il me semble).

    a++ et bonne chance

  5. #5
    Membre éprouvé
    Profil pro
    Inscrit en
    Février 2004
    Messages
    1 825
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 1 825
    Par défaut
    ok merci.

    J'ai regardé mais... y'a pas grand chose...

    Parcontre c'est quoi le AccessibleContext? ça se modifie ça? Parceque j'ai vu beaucoup de get, et presque rien en set... ça serait utils de toucher à ça pour mon cas?

    Mais c'est bizarre que le MenuItem ne propose pas un truc gérer un minimum son apparence quand il n'est pas actif...

    J'ai du passer à côté de quelque chose là

  6. #6
    Membre Expert Avatar de herve91
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    1 282
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 282
    Par défaut
    L'apparence du bouton à l'état "disabled" est géré par JMenuItem (comportement hérité de AbstractButton), par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    jMenuItem.setDisabledIcon(jMenuItem.getIcon());

Discussions similaires

  1. JMenu et JMenuItem s'affichent pas en Arabe
    Par j_esti dans le forum AWT/Swing
    Réponses: 2
    Dernier message: 23/09/2013, 10h45
  2. [JMenuItem] Empecher la fermeture du JMenu..
    Par JuFromParis dans le forum AWT/Swing
    Réponses: 5
    Dernier message: 28/10/2010, 17h24
  3. [JMenu] Soucis d'ajout de nouvelle JMenuItem
    Par fripette dans le forum Composants
    Réponses: 5
    Dernier message: 27/03/2008, 17h06
  4. Désactiver les touches F1, F2, F3, F4, F5 dans IE
    Par ZiZouJH dans le forum Flash
    Réponses: 7
    Dernier message: 17/02/2003, 09h59
  5. Réponses: 8
    Dernier message: 17/05/2002, 09h08

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