Gente é o seguinte to com um problema jah faz uma duas horas e apesar de ser meio bobo naum consegui resolver
Seguinte eu tenho um classe que adiciona um registro numa lista e na minha GUI qdo eu clico no "next" ele naum ta preenchendo todos os campos naum sei pq apesar de eu setar todos o JtxtFilds:
codigo das classes:
Adiciona Registro:
private void btnAdicionarActionPerformed(java.awt.event.ActionEvent evt) {
if(txtNome.getText().trim().length() == 0){
JOptionPane.showMessageDialog(rootPane, "O campo nome deve ser preenchido");
}
else{
String nome = txtNome.getText();
Pessoa pessoa = new Pessoa(nome);
cadastroDePessoas.adiciona(pessoa);
String bairro = txtBairro.getText();
pessoa.setBairro(bairro);
String email = txtEmailGeral.getText();
pessoa.setEmail(email);
String fone = txtTelefone.getText();
pessoa.setTelefone(fone);
String endereco = txtEndereco.getText();
pessoa.setEndereco(endereco);
String cidade = txtCidade.getText();
pessoa.setCidade(cidade);
String uf = txtUF.getText();
pessoa.setUf(uf);
String apelido = txtApelido.getText();
pessoa.setApelido(apelido);
String homepage = txtHomePage.getText();
pessoa.setHomepage(homepage);
String fax = txtFax.getText();
pessoa.setFax(fax);
if(txtFormatCep.getText().length() > 0 && txtFormatCep.getText().length() < 8){
JOptionPane.showMessageDialog(null, "O numero do CEP é inválido");
}
else{
String cep = txtFormatCep.getText();
pessoa.setCep(cep);
}
if(!txtFormatDataOrigem.getText().trim().equals("__/__/____")){
SimpleDateFormat formatoData = new SimpleDateFormat("dd/MM/yyyy");
Date agora = new Date();
Date cal = new Date();
try {
cal = formatoData.parse(txtFormatDataOrigem.getText());
}
catch (ParseException ex) {
JOptionPane.showMessageDialog(rootPane, "Formato da data incorreto", "Erro", JOptionPane.ERROR_MESSAGE);
return;
}
// TODO validar meses e dias :/
if(cal.after(agora)){
JOptionPane.showMessageDialog(rootPane, "Data inválida", "Cuidado", JOptionPane.WARNING_MESSAGE);
}
else{
pessoa.setDataOrigem(cal);
}
}
if(opcCpf.isSelected()){
if(txtFormatCpf.getText().length() > 0 && txtFormatCpf.getText().length() < 14){
JOptionPane.showMessageDialog(null, "Campo \"CPF\" não esta preechindo completamente","Cuidado", JOptionPane.WARNING_MESSAGE);
}
else{
String cpf = txtFormatCpf.getText();
pessoa.setCpf(cpf);
}
}
else if(opcCnpj.isSelected()){
if(txtFormatCnpj.getText().length() > 0 && txtFormatCnpj.getText().length() < 18){
JOptionPane.showMessageDialog(null, "Campo \"CPF\" não esta preechindo completamente","Cuidado", JOptionPane.WARNING_MESSAGE);
}
else{
String cnpj = txtFormatCnpj.getText();
pessoa.setCnpj(cnpj);
}
}
gerenciaTabelas.adicionaPessoa(cadastroDePessoas.ultimaPessoaDaLista().parametroAddTabPessoas());
JOptionPane.showMessageDialog(null, "Individuo adicionado com sucesso","Parabéns", JOptionPane.PLAIN_MESSAGE);
this.dispose();
}
}
private void opcCpfActionPerformed(java.awt.event.ActionEvent evt) {
if(opcCpf.isSelected()){
txtFormatCpf.setEnabled(true);
txtFormatCnpj.setEnabled(false);
txtFormatCnpj.setText("");
}
}
private void opcCnpjActionPerformed(java.awt.event.ActionEvent evt) {
if(opcCnpj.isSelected()){
txtFormatCnpj.setEnabled(true);
txtFormatCpf.setEnabled(false);
txtFormatCpf.setText("");
}
}
public JFormattedTextField getDataOrigem(){
return txtFormatDataOrigem;
}
public CadastroDePessoas getCdp(){
return cadastroDePessoas;
}
Cadastro de Pessoas (metodo proximo())
private void btnProximoElemActionPerformed(java.awt.event.ActionEvent evt) {
try{
if(getCadastroDePessoas().getPosicao() != getCadastroDePessoas().getLista().size()-1){
txtNome.setText(getCadastroDePessoas().proximaPessoaDaLista().getNome());
txtBairro.setText(getCadastroDePessoas().pessoaPosicaoAtual().getBairro());
txtCidade.setText(getCadastroDePessoas().pessoaPosicaoAtual().getCidade());
txtEndereco.setText(getCadastroDePessoas().pessoaPosicaoAtual().getEndereco());
txtTelefone.setText(getCadastroDePessoas().pessoaPosicaoAtual().getTelefone());
txtEmailGeral.setText(getCadastroDePessoas().pessoaPosicaoAtual().getEmail());
txtFormatCpf.setText(getCadastroDePessoas().pessoaPosicaoAtual().getCpf());
txtUF.setText(getCadastroDePessoas().pessoaPosicaoAtual().getUf());
txtPosicaoLista.setText(String.valueOf(getCadastroDePessoas().getPosicao()));
if(getCadastroDePessoas().pessoaPosicaoAtual().getDataOrigem() != null){
Date data = getCadastroDePessoas().pessoaPosicaoAtual().getDataOrigem();
txtFormatDataOrigem.setText(sdf.format(data));
}
}
else{
JOptionPane.showMessageDialog(null, "Não há proximo registro", "ERRO", JOptionPane.ERROR_MESSAGE);
}
}
catch(IndexOutOfBoundsException iofbe){
JOptionPane.showMessageDialog(null, "Não há proximo registro", "ERRO", JOptionPane.ERROR_MESSAGE);
}
catch(NumberFormatException nfe){
nfe.printStackTrace();
}
}
classe onde é armazenada a lista:
[code]public class CadastroDePessoas implements Serializable{
private List<Pessoa> lista;
private int posicao = -1;
public CadastroDePessoas(){
lista = new ArrayList<Pessoa>();
}
public boolean adiciona(Pessoa p){
return lista.add(p);
}
public Pessoa pessoaAnteriorDaLista() throws NoSuchElementException, IndexOutOfBoundsException{
return lista.get(--posicao);
}
public Pessoa proximaPessoaDaLista() throws NoSuchElementException, IndexOutOfBoundsException{
return lista.get(++posicao);
}
public Pessoa pessoaPosicaoAtual(){
return lista.get(posicao);
}
public Pessoa primeiraPessoaDaLista(){
return lista.get(0);
}
public Pessoa ultimaPessoaDaLista() throws NoSuchElementException, IndexOutOfBoundsException{
return lista.get(lista.size()-1);
}
public int primeiraPosicaoDaLista(){
posicao = 0;
return posicao;
}
public int ultimaPosicaoDaLista(){
posicao = lista.size()-1;
return posicao;
}
public int getPosicao() {
return posicao;
}
public void setPosicao(int posicao) {
this.posicao = posicao;
}
public List<Pessoa> getLista(){
return lista;
}
@Override
public String toString(){
StringBuffer s = new StringBuffer();
for(Pessoa p : lista){
s.append(p.toString());
}
return s.toString();
}
}[/code]