Queria colocar uma imagem de fundo no menu. Já vi aqui e em outros lugares com o PaintComponent, mas o problema é que tenho um jInternalFrame onde vai ser selecionada a imagem e um botão para visualizar a imagem e se o usuário optar pela imagem escolhida, salva na pasta do programa. Esse é o código que estou usando, sendo que está faltando o código para adicionar a imagem ao menu.
//Para pegar a imagem e o caminho
private Image img;
private File Nomeimagem;
botão de procurar.
private void btnProcurarActionPerformed(java.awt.event.ActionEvent evt) {
javax.swing.JFileChooser jfc = new javax.swing.JFileChooser(new File("Imagens/"), FileSystemView.getFileSystemView());
jfc.setMultiSelectionEnabled(false);
jfc.setDialogTitle("Selecione a imagem");
jfc.setFileFilter(new FileNameExtensionFilter("JPG, GIF e PNG", "jpg", "gif", "png"));
jfc.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);// ha outras opcoes alem de files_only
int resposta = jfc.showOpenDialog(this);
if (resposta == 0) {
Nomeimagem = jfc.getSelectedFile();
img = new ImageIcon(jfc.getSelectedFile().getAbsolutePath()).getImage().getScaledInstance(120, 150, Image.SCALE_DEFAULT);
txtCaminho.setText(Nomeimagem.getAbsolutePath());
}
}
Botão de OK, para salvar a imagem
private void btnOkActionPerformed(java.awt.event.ActionEvent evt) {
if (!txtCaminho.getText().trim().equals("")) {
// Escreve a imagem gerada para um arquivo
try {
BufferedImage image = ImageIO.read(Nomeimagem);
// Salva como JPEG
File file = new File("Imagem.jpg");
ImageIO.write(image, "JPG", file);
} catch (java.io.IOException e) {
JOptionPane.showMessageDialog(null, e.getMessage());
}
}
}
Agora falta o código do botão visualizar
private void btnVisualizarActionPerformed(java.awt.event.ActionEvent evt) {
//falta
}