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

  FORUM HardWare.fr
  Programmation
  Java

  identifier un panel fantome qui n'apparait que dans le jdk1.4 [resolu]

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

identifier un panel fantome qui n'apparait que dans le jdk1.4 [resolu]

n°383232
Feanor
Hébéphrène à temps partiel
Posté le 05-05-2003 à 18:37:41  profilanswer
 

je suis sur un projet depuis aujourd'hui.
 
Lorsaue le projet est lance avec le jdk 1.3 il marche, avec le 1.4 se supperpose a l'ecran un panel apparement fantome, sans rien dessus pour l'identifier.
 
j'ai mis avec la reflexion un moustelistener sur tous les panels connus du 'super' panel dans lequel le fantome apparait, mais il reste le seul a ne pas reagir aux clics.....
 
le fantome est toujours la et n'est pas un fils direct du super panel......
 
y a un moyen (en utilisant la reflexion j'imagine) de contacter tous les jpanel connus de l'appli pour leurs attribuer mon listener identificateur ????


Message édité par Feanor le 06-05-2003 à 16:00:50
mood
Publicité
Posté le 05-05-2003 à 18:37:41  profilanswer
 

n°383239
nraynaud
lol
Posté le 05-05-2003 à 18:48:42  profilanswer
 

Feanor a écrit :


 
y a un moyen (en utilisant la reflexion j'imagine) de contacter tous les jpanel connus de l'appli pour leurs attribuer mon listener identificateur ????


 
tu récupère le rootPane, et tu navigue avec ça :
http://java.sun.com/j2se/1.4.1/doc [...] mponents()
 
et un peu de instanceof (c'est du temporaire).
et en voiture simone.

n°383706
artemice
( - ;
Posté le 06-05-2003 à 08:42:53  profilanswer
 

refile nous le code car g fait pas mal d'appli et les pannels fantome je connait pas!! Ca peu être intéréssant!  :??:  :pt1cable:  :kaola:

n°383707
benou
Posté le 06-05-2003 à 08:44:29  profilanswer
 

il faut que tu utilises javax.swing.GhostBuster :D


---------------
ma vie, mon oeuvre - HomePlayer
n°384070
Feanor
Hébéphrène à temps partiel
Posté le 06-05-2003 à 11:37:05  profilanswer
 

lol les precedents je les avaient traques avec la reflexion....
 
c 10 fois plus pratiques et je prend tous les components merci
 
 
j'ai identifie le panel c un scrollpanel, mais j'arrive pas a trouver ou il est cree
 
les sources sont tres nombreuxm mais je peux poster la methode si y en a que ca interesse :
 

Code :
  1. static MouseListener mymouse = new MouseAdapter() {
  2.  public void mouseClicked(MouseEvent e) {
  3.      Component cp = (Component)e.getSource();
  4.      System.out.println("you clicked on " + cp);
  5.      System.out.println("is " + cp.getName());
  6.      System.out.println("is in " + cp.getParent() + "\n" );
  7.  }
  8. };
  9.     /**
  10.        Recursive
  11.        Each Container is scanned
  12.        each component is attached to mymouse
  13.     */
  14.     public void spyPanel(Container cont) {
  15. int limite=cont.getComponentCount();
  16. if (limite !=0) {
  17.     for (int i=0;i<limite;i++) {
  18.  Component comp = cont.getComponent(i);
  19.  String name = comp.getClass().toString();
  20.  System.out.println("listener added on " + name);
  21.  comp.addMouseListener(mymouse);
  22.  //si le conmponent est un container, le parcourir
  23.  if (comp instanceof Container) {
  24.      spyPanel((Container)comp);
  25.  }
  26.     }
  27. }
  28.     }

n°384622
Feanor
Hébéphrène à temps partiel
Posté le 06-05-2003 à 16:00:30  profilanswer
 

j'ai trouve :
 
les concepteurs avaient faient un scrollpane qui rendait invisible tous ces fils a commencer par le JViewPort.
 
ils avaient surcharges la methode et ca marchait sans prob sous 1.3 : un scrollpane avec viewport insivisble ne s'affiche pas.
 
et la sous 1.4 il a fallu rajouter un appel a super.setVisible(bool) pour  completement le faire disparaitre.
 
 
 
 
pourtant j'avais lu les changements 1.3 -> 1.4 pour me donner des indices mais je n'ai rien trouve...

n°384989
artemice
( - ;
Posté le 06-05-2003 à 19:13:22  profilanswer
 

cool le code... moi aussi j'adort la réflexion c puyissant et super jolie  :love:  :sol:

n°385050
nraynaud
lol
Posté le 06-05-2003 à 19:49:02  profilanswer
 

artemice a écrit :

cool le code... moi aussi j'adort la réflexion c puyissant et super jolie  :love:  :sol:  


'tain il m'a fallu 3 heures pour trouver la "réflexion" dans le code. C'est le bout d'introspection du listener !
 
Faites gaffe, si ça ça vous fait bander, vous allez passer des nuits humides avec Smalltalk et Self !


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

  identifier un panel fantome qui n'apparait que dans le jdk1.4 [resolu]

 

Sujets relatifs
[Delphi 7] dbexpress c bien mais ... [resolu][résolu]Code RMI qui foire : lancement registry
[Delphi 7 Entreprise Studio] il me manque des trucs ! [resolu][pas résolu!!]lancer une connexion internet à partir d'une appli
[PERL] executer une commande (facile)... [resolu]Fichier Batch : comment insérer des balises ? [Pb résolu]
[Débutant][Résolu] Comment superposer 2 JLabel ?[MFC/C++] Créer un menu+gérer les évenements du menu [résolu]
[ Python ] problème libftp [ resolu ]Comment avoir l'interface de WinXP avec une application VB6[résolu]
Plus de sujets relatifs à : identifier un panel fantome qui n'apparait que dans le jdk1.4 [resolu]


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