La compoenente chooser è stata dichiarata come variabile globale dentro la classe textEditFrame ovvero quella che implementa il word editor, o meglio dovrebbe! Comunque per completezza ti riporto le parti del codiche che ne fanno uso. Grazie anticipatamente.
codice:public class TextEditFrame extends JFrame{ /*** Variabili di Classe ***/ private JTextArea textArea; private JTextField from; private JTextField to; private JComboBox faceCombo; private JComboBox sizeCombo; private JMenuItem saveItem; private JMenuItem saveAsItem; private JCheckBoxMenuItem readonlyItem; private JPopupMenu popup; private int fontSize; private String fontFace; private int fontStyle; private Font font; private AboutDialog dialog; private JFileChooser chooser; /*** Costruttore ***/ ........ ........ //BARRA DEI MENU //menu di massimo livello FILE JMenu fileMenu = new JMenu("File"); //mostra il tasto mnemonico fileMenu.setMnemonic('F'); //agginge le voci del menu File JMenuItem newItem = fileMenu.add(new TestAction("New")); //agginge le voci del menu File con i tasti di scelta rapida JMenuItem openItem = new JMenuItem("Open"); openItem.setAccelerator(KeyStroke.getKeyStroke( KeyEvent.VK_O, InputEvent.CTRL_MASK)); fileMenu.add(openItem); openItem.addActionListener(new FileOpenListener()); ............ ............ //BARRA DEGLI STRUMENTI //imposta le azioni dei pulsanti Action newAction = new TestAction("New", new ImageIcon("new.gif")); JButton openButton = new JButton(new ImageIcon("open.gif")); openButton.addActionListener(new FileOpenListener()); ............ ............ /* @effects apre una finestra di dialogo di scelta dei file **/ private class FileOpenListener implements ActionListener{ public void actionPerformed(ActionEvent evt){ //imposta la finestra di scelta dei file chooser.setCurrentDirectory(new File(".")); //accetta tutti i file di testo con estenzione .txt .java .c .cpp final ExtensionFileFilter filter = new ExtensionFileFilter(); filter.addExtension("txt"); filter.addExtension("java"); filter.addExtension("c"); filter.addExtension("cpp"); filter.setDescription("Text files"); chooser.setFileFilter(filter); //mostra una finestra di dialogo di scelta del file int result = chooser.showOpenDialog(TextEditFrame.this); //per salvare usare showSaveDialog //se il file di testo selezionato è accettato, lo visualizza nella casella di testo if(result == JFileChooser.APPROVE_OPTION) textArea.setText(chooser.getSelectedFile().getPath()); }//actionPerformed }//FileOpenListener

Rispondi quotando