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 :

mettre en premier plan JPopupMenu??


Sujet :

AWT/Swing Java

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 57
    Points : 36
    Points
    36
    Par défaut mettre en premier plan JPopupMenu??
    bonjour,
    alors voila je cree une fenetre JFrame sur la quelle je fais un dessin (une extension de canvas) et je voudrai que lorsque l'utilisateur clique sur le bouton droit il y est un JPopupMenu qui souvre..

    jusque la rien danormale sauf que quand je clique droit rien ne saffiche alors sur mon dessin...

    je pense que etant donne que je fait appel a la methode repaint() mon JPopUpMenu est cache...

    est ce que quelq'un a une idee pour resoudre mon probleme??

    merci davance

  2. #2
    Membre émérite
    Avatar de xavlours
    Inscrit en
    Février 2004
    Messages
    1 832
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 1 832
    Points : 2 410
    Points
    2 410
    Par défaut
    Bonjour,

    canvas est un composant de awt, et il ne faut pas mélanger des composants awt et Swing, sinon ... les JPopupMenus sont "en dessous" des composants awt (ton canvas).
    2 solutions :
    - remplacer Canvas par JPanel (aucune adaptation nécessaire)
    - appeler JPopupMenu.setLightweightPopupEnabled ou un truc comme ça.

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 57
    Points : 36
    Points
    36
    Par défaut
    jai essaye en extendant JPanel au lieu de canvs mais lappel a la methode repaint() ne fonctionne plus

    est ce normal??

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 57
    Points : 36
    Points
    36
    Par défaut
    non cest bon cela fonctionne

    par contre jai une question : pourquoi ne faut il pas melanger swing et awt??

    et dans quel cas utiliser lun ou lautre??

    merci...

  5. #5
    Expert éminent sénior
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Points : 12 977
    Points
    12 977
    Par défaut
    A moins d'utiliser une VM ancestrale il vaut mieux en général préférer Swing c'est un tant soit peu plus étoffé comme toolkit et plus récent et plus évolutif et ....

    Sinon pourquoi ne faut il pas mélanger AWT et Swing: direction la FAQ

Discussions similaires

  1. Mettre au premier-plan (par VBA)
    Par SansSucre dans le forum IHM
    Réponses: 6
    Dernier message: 27/01/2018, 10h15
  2. Réponses: 4
    Dernier message: 19/06/2007, 10h02
  3. mettre en premier plan un formulaire
    Par celiaaa dans le forum VBA Access
    Réponses: 4
    Dernier message: 30/05/2007, 12h49
  4. Réponses: 1
    Dernier message: 22/05/2007, 16h03
  5. [VBA] Mettre au premier plan par VBA?
    Par Caroline1 dans le forum Access
    Réponses: 9
    Dernier message: 02/05/2006, 22h49

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