Merci � Cedric pour son lien...
http://developer.java.sun.com/developer/bugParade/bugs/4280243.html

C'est un bug qui � l'air d'�tre sous Windows (!)

Effectivement la solution de contournement est :

//add this code
someJMenuItem.enableInputMethods(false);

C'est � mettre en place sur tous le JMenu/JMenuItem...

On trouve aussi une m�thode qui r�alise cela :

Here is a method I used to implement the work around for a
multi level menu. Pass the Parent container (JPopupMenu in
my case) as a seed to the recursive method below:

private  void  fixInputMethodProblem  (JComponent componentToFix)  {
    int iMax = componentToFix.getComponentCount();
    for( int i = 0; i < iMax; i++ )  {
        Component comp = componentToFix.getComponent( i );
        if ( comp instanceof JMenuItem )  {
            comp.enableInputMethods(false );
        }
        else  {
            fixInputMethodProblem(componentToFix );
        }
    }
}


pour les JPopupMenu on a comme contournement :

// fix for JPopupMenu crash near JFrame borders
JPopupMenu.setDefaultLightWeightPopupEnabled( false );

Merci encore � tous!

Amicalement,

Guillaume Helle

Répondre à