Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1633 connectés 

  FORUM HardWare.fr
  Programmation

  [Java] Détection d'un componentqui passe a setVisible(false)

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Java] Détection d'un componentqui passe a setVisible(false)

n°43562
aurel
Fraggueur en liberté
Posté le 29-06-2001 à 10:17:55  profilanswer
 

J'ai une Gui avec des composants qu'on peut déplacer sur une fenetre(mousedragged) et quand on clique droit sur un composant j'ai un jpopupmenu qui apparait et qui contient deux boutons cliquables.
je voudrais savoir quand le popup disparait. Quand je clique sur un des deux boutons c ok, mais quand je clique ailleurs, ca marche pas, alors que je lui ai pourtant assigné un componentListener(hidden, shown..)
 
voila une partie du code:
 j'espere que c'est compréhensible  
 
public class ListenerComponent implements ListenerMain, ActionListener, java.awt.event.ComponentListener
{
 /* the pointclick when dragg */
 private Point clickPoint;
 private JPopupMenu jpm;
 private JFrame frame;
 private PropertyChangeSupport pcs;
 private java.awt.Font fontMenu;
 
public ListenerComponent(JFrame frame)
 {
  this.frame = frame;
  pcs = new PropertyChangeSupport(this);
  fontMenu = new java.awt.Font("Arial",java.awt.Font.PLAIN, 11);
  jpm = new JPopupMenu();
 }
   
 public void componentHidden(java.awt.event.ComponentEvent e)
 {
  System.out.println("hidden" );
  System.out.println(e.getSource());
  pcs.firePropertyChange(Component.PROPERTY_DISPLAYED, null,java.awt.Color.lightGray);
 }
 public void componentMoved(java.awt.event.ComponentEvent e){ System.out.println(e.getSource());
   System.out.println("moved" ); }
 public void componentResized(java.awt.event.ComponentEvent e){ System.out.println(e.getSource());
   System.out.println("resized" ); }
 public void componentShown(java.awt.event.ComponentEvent e){  System.out.println(e.getSource());
   System.out.println("shown" );}
 
 public void mouseClicked(MouseEvent e)
    {
     if (SwingUtilities.isLeftMouseButton(e))
     {
   Component component = (Component) e.getSource();
   displayProperties(component);
     }
     if (SwingUtilities.isRightMouseButton(e))
  {
   addPropertyChangeListener((Component) e.getSource());
   jpm.addComponentListener(this);
   pcs.firePropertyChange(Component.PROPERTY_DISPLAYED,
 null, new java.awt.Color(192,192,250));

mood
Publicité
Posté le 29-06-2001 à 10:17:55  profilanswer
 

n°43566
lamatrice
Posté le 29-06-2001 à 10:33:25  profilanswer
 

tu essayer la methode isVisible()  ?
 
boolean isVisible()

n°43568
lamatrice
Posté le 29-06-2001 à 10:35:50  profilanswer
 

rectification,
 
après 20 seconde de recher dans la doc api j'ai trouvé ce qui t'avais besoin : isShowing()
 
public boolean isShowing()
Determine if the object is showing. This is determined by checking the visibility of the object and ancestors of the object. Note: this will return true even if the object is obscured by another (for example, it happens to be underneath a menu that was pulled down).
 
 
 
http://java.sun.com/j2se/1.3/docs/api/index.html

n°43595
aurel
Fraggueur en liberté
Posté le 29-06-2001 à 11:17:01  profilanswer
 

Ouais merci.
 
Mais c'est pa vraiment ca  que je veux, je veux que ce soit le composant lui-meme qui me dise quand il est plus visible.
je veux a avoir a aller le chercher moi-meme.
 
c pour ca que j'ai pensé a l'interface ComponentListener

n°43618
aurel
Fraggueur en liberté
Posté le 29-06-2001 à 11:50:56  profilanswer
 

pour ceux qui veulent voila la réponse
c pas un ComponentListener qu'il faut mais PopupMenuListener !!!
2 heures de perdus pour des conneries!!
pbl réglé en 4 min ...


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation

  [Java] Détection d'un componentqui passe a setVisible(false)

 

Sujets relatifs
[JAVA] minuscule-------->majuscule[JAVA] JFileChooser, comment ajouter une extension au nom du fichier
[java] compiler[C/UNIX] crypter/decrypter un mot de passe avec la fonction crypt
[Java] Socket, Securité IE[JAVA] Ouin ! J'éfface ce que j'ai déjà écrit !
exist il des progs similaire a PHP et JAVA serveur (websphere)[JAVA] Comment communiquent les beans entre eux ?
[java script] probleme avec les mac ![java] rangement
Plus de sujets relatifs à : [Java] Détection d'un componentqui passe a setVisible(false)


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR