Boa tarde a todos, tenho um JFileChooser em um JFrame juntamente com um JPanel
gostaria que ao selecionar uma imagem no JFileChooser a imagem escolhida seja redimencionada e setada no JPanel.
até agora tenho este código.
private void actionListenerButtonSelecionarImagem(){
this.fileChooserImagem = new JFileChooser();
FileNameExtensionFilter filter = new FileNameExtensionFilter("Arquivos de Imagem", "jpg", "jpeg", "gif", "png");
fileChooserImagem.setFileFilter(filter);
fileChooserImagem.setAcceptAllFileFilterUsed(false);
int selecionou = this.fileChooserImagem.showDialog(this, null);
if (selecionou == JFileChooser.APPROVE_OPTION)
if (fileChooserImagem.getSelectedFile() != null)
System.out.println(fileChooserImagem.getSelectedFile().getAbsolutePath());
}
se alguem tiver alguma dica ou referencia fico grato.
Não sei se é o certo, mas você pode criar um JLabel dentro do painel e colocar a imagem nele
Isso não resolve se voce quiser colocar mais componentes por cima da imagem.
Para isso, voce precisa desenhar a imagem no Graphics do JPanel.
Temos isso já implementado no Towel.
Salve salve grande Marky.Vasconcelos, estou tentando implementar aqui com o seu jar,
mas ao selecionar a imagem não acontece nada.
poderia me dar uma luz?
vlw.
if (fileChooserImagem.getSelectedFile() != null)
try {
panel = new JImagePanel(loadImage(fileChooserImagem.getSelectedFile().getAbsolutePath()));
} catch (IOException e) {
e.printStackTrace();
}
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
jImagePanel.setImage("novaImagem");
jImagePanel.repaint();
}
Pegando carrona no post, que era a mesma duvida que eu tinha,
como faço pra inicializar o JImagePanel, sem imagem
try {
meuPanel = new JImagePanel(loadImage(""));
} catch (IOException e1) {
e1.printStackTrace();
}
painelDaFoto.add(meuPanel);
Então pessoa, não estou conseguindo apresentar a imagem através do JPanel PFoto, não da erro algum, mas não apresenta a imagem escolhida!
segue meu código:
JFileChooser fileChooser = new JFileChooser();
fileChooser.setDialogTitle("Escolha a Foto");
fileChooser.setFileSelectionMode(JFileChooser.FILES_ONLY);
if (fileChooser.showOpenDialog(this) == JFileChooser.APPROVE_OPTION)
{
File arquivo = fileChooser.getSelectedFile();
BufferedImage bi =ImageIO.read(arquivo);
JImagePanel PainelFoto = new JImagePanel(bi);
PFoto.add(PainelFoto, BorderLayout.CENTER);