Bonjour

J'ai une interface graphique (développée sous Netbeans 3.5.1) dans laquelle j'ai un JFileChooser que j'ouvre à partir d'un bouton.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
   private void jButton2MouseClicked(java.awt.event.MouseEvent evt) {
        try
        {
            jFileChooser1.setVisible(true);
            File f = new File(new File(".").getCanonicalPath());
            jFileChooser1.setCurrentDirectory(f);
            jFileChooser1.addChoosableFileFilter(new MyFilter());
            int retour = jFileChooser1.showOpenDialog(mainFen);
            if(retour == jFileChooser1.APPROVE_OPTION)
            {
                fichierInTxt.setText(jFileChooser1.getSelectedFile().getAbsolutePath());
            }
        }
        catch (Exception e)
        {
            System.out.println("erreur d'execution " + e.toString());
            e.printStackTrace();
        }
    }
Je souhaiterai pouvoir ouvrir ce JFileChooser appuyant sur Ctrl+O. J'ai essayé d'utiliser l'event KeyPressed sur le parent qui contient le JFileChooser mais je n'ai pas réussi.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
    private void formKeyPressed(java.awt.event.KeyEvent evt) {
        if ((evt.CTRL_DOWN_MASK==1) && (evt.VK_O==1))
        {
            try
            {
                jFileChooser1.setVisible(true);
                File f = new File(new File(".").getCanonicalPath());
                jFileChooser1.setCurrentDirectory(f);
                jFileChooser1.addChoosableFileFilter(new MyFilter());
                int retour = jFileChooser1.showOpenDialog(mainFen);
                if(retour == jFileChooser1.APPROVE_OPTION)
                {
                    fichierInTxt.setText(jFileChooser1.getSelectedFile().getAbsolutePath());
                }
            }
            catch (Exception e)
            {
                System.out.println("erreur d'execution " + e.toString());
                e.printStackTrace();
            }
        }
Quelqu'un pourrait-il m'aider ?
Merci d'avance