Salut,

Je me heurte à un problème et je cherche une méthode pour m'en sortir. Dernièrement je remarque un certain comportement sur une frame de mon application qui s'affiche dans un coin haut gauche quelques instants puis se redessine au centre correctement.
Parfois j'ai un effet fantome ou la frame reste affiché (mais n'est pas accessible) et si je passe autre chose par dessus, ca l'efface (un peu comme une gomme).

Je remarque que ce bug ne m'apparait qu'en jdk 1.4, je ne le rencontre pas en 1.5
et c'est accompagné d'une exception :
java.lang.ArrayIndexOutOfBoundsException: No such child: 2

at java.awt.Container.getComponent(Container.java:237)

at javax.swing.JComponent.rectangleIsObscured(JComponent.java:3702)

at javax.swing.JComponent.paint(JComponent.java:806)

at javax.swing.JLayeredPane.paint(JLayeredPane.java:557)

at javax.swing.JComponent.paintWithOffscreenBuffer(JComponent.java:4787)

at javax.swing.JComponent.paintDoubleBuffered(JComponent.java:4740)

at javax.swing.JComponent._paintImmediately(JComponent.java:4685)

at javax.swing.JComponent.paintImmediately(JComponent.java:4488)

at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:410)

at javax.swing.SystemEventQueueUtilities$ComponentWorkRequest.run(SystemEventQueueUtilities.java:117)

at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:189)

at java.awt.EventQueue.dispatchEvent(EventQueue.java:478)

at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:201)

at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151)

at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:145)

at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:137)

at java.awt.EventDispatchThread.run(EventDispatchThread.java:100)
Ca aurait été dans mon code, je m'en serais sorti. Ici c'est swing qui tente de repeindre des zones de l'écran et je ne connais pas bien son fonctionnement.
Du coup je ne vois pas trop quelle méthode appliquer pour comprendre et éventuellement corriger.

Auriez vous une idée ?