Boa tarde Galera,
Eu como iniciante no java, gostariade saber como uso o jfilechoose no java para habilitar ou ate mesmo exibir o icone da foto maior para visualização, alguem poderia me ajudar? ou alguma outra maneira de fazer esse botão exibir aparecer habilitado na tela da busca de imagens!!
cara eu nao entendi a sua duvida, pode esclarecer?
de repente da um exemplo do q vc fez e o q deveria aparecer?
boa noite, eu e meu colega estamos chamando o JFILECHOOSER para buscar imagens, e nessa hora da busca gostariamos de ter a opção de exibir a imagem e não apenas o nome do arquivo.
Só jogar isso dentro de um JButton e depois colocar uma JLabel de qualquer tamanho na tela, muda o nome dela pra campofoto. Pronto, vai conseguir mostrar a foto!
try {
JFileChooser chooser = new JFileChooser();
chooser.setAcceptAllFileFilterUsed(false); //Ignora qualquer tipo de extensão
FileNameExtensionFilter filter = new FileNameExtensionFilter("Somente Imagens (.jpg e .png)", "jpg", "png"); // Faz um filtro pra pegar só imagens.
chooser.addChoosableFileFilter(filter); //Adiciona o filtro
chooser.setDialogTitle("Selecione uma foto"); //Titulo pra o fileChooser
chooser.showOpenDialog((null)); // abre o fileChosser
File f = chooser.getSelectedFile(); //pega o arquivo selecionar
//////////////////////// Mostrando a imagem
String caminho = f.getPath(); //Como vc n quer mostrar, deixa só na String msm.
ImageIcon i = new ImageIcon(new ImageIcon(caminho).getImage().getScaledInstance(campofoto.getWidth(), campofoto.getHeight(), Image.SCALE_DEFAULT)); //Aqui vc precisa ter uma JLabel, de qualquer tamanho, só precisa ter
campofoto.setIcon(i); //O nome da JLabel é campo foto, vc pode colocar qualquer nome e depois colocar o nome da jlabel aqui!!
} catch (HeadlessException e) {
}
meu caro, acredito que tenha havido um engado aqui,
essa parte referente a pegar uma imagem pelo filechooser e adicionar a um label eu consegui fazer,
a dúvida em questão, seria na hora da seleção da foto pela parte do usuário ele poder escolher visualizar a foto e não apenas o nome do arquivo.
Vc tá programando para desktop ou web?
desktop
Estamos programando para desktop.
Ok, vocês tão conseguindo ver só o caminho do arquivo, correto? É só copiar a última parte:
String caminho = f.getPath(); //Como vc n quer mostrar, deixa só na String msm. ImageIcon i = new ImageIcon(new ImageIcon(caminho).getImage().getScaledInstance(campofoto.getWidth(), campofoto.getHeight(), Image.SCALE_DEFAULT)); //Aqui vc precisa ter uma JLabel, de qualquer tamanho, só precisa ter campofoto.setIcon(i);
Este artigo mostra como personalizar um JFileChooser:
Você pode adicionar um acessório ao JFileChooser para visualizar os arquivos de imagens que são selecionados, uma “pré visualização”. Ele tem um método chamado setAccessory(JComponent newAcessory) para adicionar um componente, que no caso mostrará a “pré visualização” desta imagem. Na seção Lista 3 do artigo ele mostra como fazer isso e mostra o código completo.
Ah, entendi a dúvida agora. Ótimo artigo!
Consegui resolver vendo este Artigo, Muito Obrigado!