Gostaria de saber como que eu faço para fazer uma caixa de dialogo ter a opção de “browse” de um arquivo no sistema operaciona do usuario?
Por exemplo eu estou fazendo uma aplicação que importa arquivo txt.Quando o usuario clicar no botão “exportar”, deve aparecer a opção de “browse” para que ele procure o arquivo dentro da maquina dele.
Eu já sei fazer aparecer a caixa de dialogo, agora falta fazer ela ter o recurso.
Tem que ser uma caixa de dialogo? Não pode ser um JFrame?
Dei uma breve pesquisada aqui na internet para ver se possuía uma maneira mas não encontrei.
Mas se puder ser em JFrame, será fácil implementar isso que você deseja.
Abraços
W
wilnerjava
Pode ser uma JFrame.
Você teria uma demostração de como funcionaria?
Abrass
Gleidson_Henrique
wilnerjava:
Pode ser uma JFrame.
Você teria uma demostração de como funcionaria?
Abrass
Sim amigo, segue o código para gerar uma janela…
Nesse exemplo que estou passando, ele permite apenas os tipos informados… as vezes isso lhe é interessante…
try {
JFileChooser flc_ImagemProduto = new JFileChooser();
flc_ImagemProduto.setDialogTitle("Procurar fotos para produtos");
flc_ImagemProduto.showOpenDialog(flc_ImagemProduto);
FileFilter filtroImagemProduto = new ExtensionFileFilter("JPG and JPEG", new String[]{"JPG", "JPEG", "PNG", "GIF", "BMP"});
flc_ImagemProduto.setFileFilter(filtroImagemProduto);
flc_ImagemProduto.setFileFilter(null);
String caminhoProdutoSelecionado = flc_ImagemProduto.getSelectedFile().getPath();
txt_CaminhoImagem.setText(caminhoProdutoSelecionado); //Nesse caso, pegava o retorno e passava para um campo
lbl_ImagemProduto.setIcon(new ImageIcon(caminhoProdutoSelecionado)); //Aqui, era mostrado a imagem em uma label
} catch (Exception ex) {
JOptionPane.showMessageDialog(null, "A imagem deve possuir a extensão .JPG, .JPEG, .PNG ou .GIF!");
}
Qualquer dúvida diga ai amigo…
Abraços
W
wilnerjava
Esse " ExtensionFileFilter" eh uma classe que voce criou?
O java não ta reconhecendo, ta pedindo pra criar classe.
Outra coisa, na linha: flc_ImagemProduto.setFileFilter(filtroImagemProduto);
ele ta pedindo pra fazer casting.
Para voce ta compilando normal?
Abrass
W
wilnerjava
Acho que meu Eclipse pode estar com problema.
Eu aindei dando uma pesquisada, seu código ta certo, esse ExtensionFileFilteré normal.
Da uma olhada na foto em anexo o erro que está dando para mim
Bom dia amigo… Me desculpe por não ter colocado a classe junto, me esqueci hehe. Como disse, ela é somente para o filtro, caso não precisar, não há necessidade de te-la no sistema…
Baixe o NetBeans para trabalhar com Swing, é melhor, embora já colocando essa classe resolverá o problema hehe
Abraços
W
wilnerjava
Agora funcionou!
Obrigado pela ajuda amigo
Uma duvida,
Pq voce acha o NetBeans melhor para trabalhar com interface grafica? Tem algumas funções extras ou algo do tipo?
Voce sabe alguma função pra salvar o arquivo? No caso o mesmo esquema que voce me mostrou, só que em vez de importar ele salva o arquivo em algum lugar ( que o usuario escolher) da maquina dele?
Um abraço
Gleidson_Henrique
Na verdade, você segue o mesmo conceito.
Você encontra o lugar que quer salvar e a partir disso utiliza outras classes para criação do arquivo.
Vamos supor que é um arquivo de texto. Você utiliza o que já aprendeu (na verdade deve ser setado algum método que ira permitir ‘criar’ o nome do arquivo sem que ele exista no diretorio) e a partir disso utiliza as classes responsaveis de arquivo e leitura e escrita para então, escrever nele.
Abraços
W
wilnerjava
Beleza, vou dar uma olhada!
Sobre o NetBeans, quais funções adicionais ele tem para Swing?