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 :

[MouseListener] sur plusieurs composants... GlassPane ?


Sujet :

Composants Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    504
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 504
    Par défaut [MouseListener] sur plusieurs composants... GlassPane ?
    Bonjour,
    j'ai une application avec dans son rootPane, un JSplitPane, on s'intereseera seulement à la partie droite de ce JSplitPane.
    splitPane.setRightComponent(...)

    bref, dans cette partie droite j'ai des JTabbedPane contenant un JScrollPane contenant eux meme un Panel A.
    c'est dans ce panel A que tout ce passe.
    il contient plusieurs composants B (graphique , que j'ai créer... et donc qui contient encore plein de truc C ...).
    Je veux pouvoir les sélectionner c'est a dire récupéré un clik sur un composant.
    pour l'instant cela marchouille, j'ai ajouté un MouseListener sur le panel de B et quand je clik sur le panel je récupère bien le clik. biensur si je click sur B mais sur un de ces composants C, je ne récupère pas le clik.
    dommage...

    j'ai eu une idée, ce serait de mettre un panel transparent de la taille deA qui se retrouverait au dessus de tout mes composants B . comme ça je récupère le clik à n'importe quelle endroit et je test le point récupéré pour connaitre lequel de mes composants B a été sélectionné ...

    Seulement comment faire pour faire cela, j'ai entendu parler lu glassPane, mais je ne sais pas comment l'utiliser...

    Si qq'1 a un exemple, ou tout simplement est ce réalisable ?

  2. #2
    Gfx
    Gfx est déconnecté
    Expert confirmé
    Avatar de Gfx
    Inscrit en
    Mai 2005
    Messages
    1 770
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Mai 2005
    Messages : 1 770
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    public class MonGlassPane extends JPanel {
      public MonGlassP ane () {
        // ... ajout des listeners
        setOpaque(false);
      }
    }
     
    // dans une JFrame
    setGlassPane(new MonGlassPane());

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    504
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 504
    Par défaut
    Merci, j'en déduis que c'est une bonne idée d'utiliser un glassPanel pour mettre mes écouteurs. lol.
    merci encore, je teste.

  4. #4
    Gfx
    Gfx est déconnecté
    Expert confirmé
    Avatar de Gfx
    Inscrit en
    Mai 2005
    Messages
    1 770
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Mai 2005
    Messages : 1 770
    Par défaut
    Oublie pas qu'il doit etre visible, focusable et qu'il doit avoir le focus pour que le key listener fonctionne.

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    504
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 504
    Par défaut
    par contre je vien de remarquer mon glassPane je veux le mettre seulement sur une partie de la JFrame, soit sur un panel ... apparemment c'est que pour les JFrame.

  6. #6
    Gfx
    Gfx est déconnecté
    Expert confirmé
    Avatar de Gfx
    Inscrit en
    Mai 2005
    Messages
    1 770
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Mai 2005
    Messages : 1 770
    Par défaut
    Utilise un JLayeredPane.

  7. #7
    Membre éclairé
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    504
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 504
    Par défaut
    je suis vraiment désolé mais je ne comprends pas.
    le JLayeredPane ne permet pas d'affecter un glassPane ?
    tu veux peux etre dire au lieu d'utiliser un glassPane, je devrais utiliset un JLayeredPane ?

  8. #8
    Gfx
    Gfx est déconnecté
    Expert confirmé
    Avatar de Gfx
    Inscrit en
    Mai 2005
    Messages
    1 770
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Mai 2005
    Messages : 1 770
    Par défaut
    Oui c'est ce que je dis.

Discussions similaires

  1. Requête sur plusieurs tables, quel composant?
    Par IvyAlice dans le forum Composants VCL
    Réponses: 8
    Dernier message: 10/06/2009, 15h17
  2. Un composant sur plusieurs panneaux, impossible ?
    Par doobinay dans le forum Agents de placement/Fenêtres
    Réponses: 7
    Dernier message: 25/05/2009, 11h12
  3. plusieurs styles différents sur même composant
    Par Bindy dans le forum Windows Presentation Foundation
    Réponses: 4
    Dernier message: 20/03/2009, 14h40
  4. [SQL Access] SELECT sur plusieurs Tables et Composer Champs
    Par Giuseppe dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 07/11/2005, 15h00
  5. SELECT sur plusieurs Tables et Composer Champs
    Par Giuseppe dans le forum Langage SQL
    Réponses: 4
    Dernier message: 07/11/2005, 13h27

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