1. java
  2. android
  3. c#
  4. .net
  5. javascript
  6. php
  7. jquery
  8. html
  9. sql

Salvar uma foto no netbeans usando o JFileChooser.

https://www.filepicker.io/api/file/UIsMFrGLSlSpFVR36c66

Eu ja tenho o codigo pra inserir a imagem no jLabel, so que eu quero quando eu clicar no botao salvar, a imagem ser salva relacionando ela com o id da pessoa mas sem usar banco de dados ou criar o caminho da imagem e so para salvar a imagem junto com o contato. vou enviar o codigo do botao salvar e do inserir imagem se alguem puder me ajudar agradeço.

 private void jBSalvarActionPerformed(java.awt.event.ActionEvent evt) {                                         
             if (verificadados()) {//verifica se o nome e a rua estao preenchidos
            cadastro();
            desabilitadados();//so desabilitas os campos para nao ser editados
            JOptionPane.showMessageDialog(null, "Contato Cadastrado com Sucesso");
        }

    }  

    private void jBIncluirFotoActionPerformed(java.awt.event.ActionEvent evt) {                                              



        JFileChooser fileChooser = new JFileChooser();   //Cria o objeto do tipo Janela JFileChooser    
        fileChooser.setDialogTitle("Escolha a Foto");  //Define o título do JFileChooser    
        fileChooser.setFileSelectionMode(JFileChooser.FILES_ONLY);  //Define que só serão abertos arquivos    
        {
            if (fileChooser.showOpenDialog(this) == JFileChooser.APPROVE_OPTION) {
                try {
                    File arquivo = fileChooser.getSelectedFile();//arquivo    
                    BufferedImage bi = ImageIO.read(arquivo); //carrega a imagem real num buffer  
                    BufferedImage aux = new BufferedImage(100, 80, bi.getType());//cria um buffer auxiliar com o tamanho desejado    
                    Graphics2D g = aux.createGraphics();//pega a classe graphics do aux para edicao    
                    AffineTransform at = AffineTransform.getScaleInstance((double) 100 / bi.getWidth(), (double) 80 / bi.getHeight());//cria a transformacao    
                    g.drawRenderedImage(bi, at);//pinta e transforma a imagem real no auxiliar    
                    jLFoto.setIcon(new ImageIcon(aux));//seta no jlabel   
                    jLFoto.setText(null);
                } catch (IOException ex) {
                    Logger.getLogger(Cadastrar.class.getName()).log(Level.SEVERE, null, ex);
                }
            }

        }

    }       

    private boolean verificadados() {
        if (!jTNome.getText().equals("") && !jTRua.getText().equals("")) {
            return true;
        } else {
            JOptionPane.showMessageDialog(null, "Campos nome ou Rua nao Preechidos");
            return false;
        }
    }

    private void cadastro() {
        Contato c1 = new Contato();
        c1.setNome(jTNome.getText());
        c1.setRua(jTRua.getText());
        c1.setNumero(jTNumero.getText());
        c1.setBairro(jTBairro.getText());
        c1.setCidade(jTCidade.getText());
        c1.setTelefone(jTTelefone.getText());
        c1.setCelular(jTCelular.getText());
        c1.setEmail(jTEmail.getText());



        try {
            ContatoDao dao = new ContatoDao();
            dao.adiciona(c1);
        } catch (SQLException ex) {
            JOptionPane.showMessageDialog(null, "Problema no Cadastro" + ex);
        }
    }
  1. Você vai ver essas setas em qualquer página de pergunta. Com elas, você pode dizer se uma pergunta ou uma resposta foram relevantes ou não.
  2. Edite sua pergunta ou resposta caso queira alterar ou adicionar detalhes.
  3. Caso haja alguma dúvida sobre a pergunta, adicione um comentário. O espaço de respostas deve ser utilizado apenas para responder a pergunta.
  4. Se o autor da pergunta marcar uma resposta como solucionada, esta marca aparecerá.
  5. Clique aqui para mais detalhes sobre o funcionamento do GUJ!

1 resposta

Não é a resposta que estava procurando? Procure outras perguntas com as tags java swing ou faça a sua própria pergunta.