E o que acontecerá quando o usuário apertar OK? Precisamos carregar a instância cliente com os valores que foram digitados nos componentes JTextField. Assim modificamos o ActionListener do botão OK da seguinte forma:

    butOK.addActionListener(new ActionListener(){
            public void actionPerformed(ActionEvent e){
                setVisible(false);
                dispose();
                
                getCliente().setNome(campoNome.getText());
                getCliente().setEndereco(campoEnd.getText());
                getCliente().setFone(campoTel.getText());
                getCliente().setCidade(campoCid.getText());
                getCliente().setCep(campoCep.getText());
                
                result = true;
            }
    });

Enfim, precisamos devolver a instância de cliente preenchida para a CadastroCliente. Para isto, implementamos o método abaixo em FormCadastro:

public Cliente getCliente() {
        return cliente;
    }

Agora, a classe CadastroCliente precisa ser corrigida para trabalhar com o novo construtor de FormCadastro e com o método getCliente. Teremos que corrigir então o código relacionado com as opções Novo e Editar do menu:

        newAction.addActionListener(new ActionListener(){
            public void actionPerformed(ActionEvent e){
                FormCadastro form = new FormCadastro(frm, new Cliente("<Novo cliente>","","","",""));
                form.setVisible(true);
                if (form.getResult()) {
                    listModel.addElement(form.getCliente());
                }
            }
        });
        
        edAction.addActionListener(new ActionListener(){
            public void actionPerformed(ActionEvent e){
                
                int sel = listBox.getSelectedIndex();
                
                Cliente cliente = (Cliente) listModel.elementAt(sel);
                
                FormCadastro form = new FormCadastro(frm, cliente);
                form.setVisible(true);
                
                if (form.getResult()) {
                    listModel.setElementAt(form.getCliente(), sel);
                }
            }
        });
Copyright © 2014 AIEC.