Escolher diretório [RESOLVIDO]

6 respostas
O

Tenho uma opção no menu do meu aplicativo que é “Escolher diretório”.
Alguém sabe como faz essa função?

javax.swing.JMenu fileMenu = new javax.swing.JMenu();
javax.swing.JMenuItem escolherDiretorio = new javax.swing.JMenuItem("Definir diretorio");

fileMenu.add(escolherDiretorio);

6 Respostas

M

Ué… voce que fez pro seu aplicativo e ta perguntando como faz?

Eu ein…

Voce quer escolher o diretorio pra que?

O

Eu só add a opção pro menu, Mark.
Mas se clicar, não faz nada.
Estou tentando fazer a função para o usuário procurar um diretório no computador.
E depois preciso salvar o caminho que o usuário escolheu.

O

Consegui =))

escolherDiretorio.addActionListener(
            new ActionListener(){
                public void actionPerformed(ActionEvent e){
                    JFileChooser fc = new JFileChooser();

                    // restringe a amostra a diretorios apenas
                    fc.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);

                    int res = fc.showOpenDialog(null);

                    if(res == JFileChooser.APPROVE_OPTION){
                        File diretorio = fc.getSelectedFile();
                        JOptionPane.showMessageDialog(null, "Voce escolheu o diretório: " + diretorio.getName());
                    }
                    else
                        JOptionPane.showMessageDialog(null, "Voce nao selecionou nenhum diretorio.");
                }
            }
        );

Agora eu preciso pegar o caminho inteiro do diretório.
O método fc.getSelectedFile() só pega o nome do diretório.
Alguém sabe como pegar o caminho todo?

M

fc.getSelectedFile retorna o arquivo escolhido.
Depois com esse arquivo voce tem os métodos da classe File.

Como getAbsolutePath

O

Legal.
Consegui aqui =))
Obrigado Mark.

Abraço

S

Mas como que vcs implementaram o getAbsolutePath nesse código?

Preciso do mesmo recurso, pegar o diretório completo e mandar pro banco de dados…

Só q no meu caso, seria um local específico do banco…

Criado 29 de setembro de 2009
Ultima resposta 25 de jul. de 2010
Respostas 6
Participantes 3