Boa Tarde a Todos
Estou fazendo um programa em java o qual tem cadastro de funcionario.
E neste cadastro eu uso um botão para carregar a imagem. segue o comando abaixo.
private void btnAdicionarFotoActionPerformed(java.awt.event.ActionEvent evt) {
JFileChooser arquivo = new JFileChooser();
arquivo.setDialogTitle("Selecione a Imagem");
arquivo.setFileSelectionMode(JFileChooser.FILES_ONLY);
FileNameExtensionFilter filter = new FileNameExtensionFilter("JPG & PNG Images", new String[]{"jpg", "png"});
arquivo.setFileFilter(filter);
arquivo.setAcceptAllFileFilterUsed(false);
arquivo.setMultiSelectionEnabled(false);
File file = new File("user.dir");
int option = arquivo.showOpenDialog(this);
// PessoasDAO pDao = new PessoasDAO();
if (option == JFileChooser.APPROVE_OPTION) {
String caminhoArquivo = "";
caminhoArquivo = arquivo.getSelectedFile().getAbsolutePath();// carrega o caminho da imagem
file = arquivo.getSelectedFile();
String nomeArquivo = file.getName();
int e = nomeArquivo.lastIndexOf(".");
String extensao = nomeArquivo.substring(e);
Image image = null;
try {
image = ImageIO.read(file);
} catch (IOException ex) {
Logger.getLogger(CadastroFuncionario.class.getName()).log(Level.SEVERE, null, ex);
}
if (extensao.equals(".jpg") || extensao.equals(".JPG")) {
lblFotoFuncionario1.setIcon(new ImageIcon(arquivo.getSelectedFile().getAbsolutePath()));
txtCaminhoImagem.setText(caminhoArquivo);// seta o caminho em uma jTextFild
lblFotoFuncionario1.setIcon(new ImageIcon(image.getScaledInstance(lblFotoFuncionario1.getWidth(), lblFotoFuncionario1.getHeight(), Image.SCALE_DEFAULT)));
} else {
JOptionPane.showMessageDialog(null, "Arquivo não suportado", "Erro", JOptionPane.ERROR_MESSAGE);
}
}
}
este comando carrega a imagem bunitinho em uma jLabel Redimensionada para o tamanho da jLabel certinho.
porem te o perigo do usuaria excluir a foto original sendo assim dar erro quando for abrir o programa de novo.
eu fiz em VB.NET algo que antes de eu salvar no banco o caminho da imagem eu copio a imagem para uma pasta o projeto e assim depois eu salvo no banco, mas em java eu nem imagino como faz isso.
Sera que alguem poderia me ajudar ficarei grato.
fico on line no skype quase 24 horas
guimarques1987etc