Ir ao conteúdo
  • Comunicados

    • Gabriel Torres

      Seja um moderador do Clube do Hardware!   12-02-2016

      Prezados membros do Clube do Hardware, Está aberto o processo de seleção de novos moderadores para diversos setores ou áreas do Clube do Hardware. Os requisitos são:   Pelo menos 500 posts e um ano de cadastro; Boa frequência de participação; Ser respeitoso, cordial e educado com os demais membros; Ter bom nível de português; Ter razoável conhecimento da área em que pretende atuar; Saber trabalhar em equipe (com os moderadores, coordenadores e administradores).   Os interessados deverão enviar uma mensagem privada para o usuário @Equipe Clube do Hardware com o título "Candidato a moderador". A mensagem deverá conter respostas às perguntas abaixo:   Qual o seu nome completo? Qual sua data de nascimento? Qual sua formação/profissão? Já atuou como moderador em algo outro fórum, se sim, qual? De forma sucinta, explique o porquê de querer ser moderador do fórum e conte-nos um pouco sobre você.   OBS: Não se trata de função remunerada. Todos que fazem parte do staff são voluntários.
    • DiF

      Poste seus códigos corretamente!   21-05-2016

      Prezados membros do Fórum do Clube do Hardware, O Fórum oferece um recurso chamado CODE, onde o ícone no painel do editor é  <>     O uso deste recurso é  imprescindível para uma melhor leitura, manter a organização, diferenciar de texto comum e principalmente evitar que os compiladores e IDEs acusem erro ao colar um código copiado daqui. Portanto convido-lhes para ler as instruções de como usar este recurso CODE neste tópico:  
Felipe Ramos_730953

Programa entrando em LOOP

Recommended Posts

Estou tentando usar um botão para registrar dados de um certo textBox num arrayList. Eu sei qual é o problema. Estou instanciando uma classe que instancia a instanciada. Isso cria um loop infinito retardado. No entanto não sei como utilizar esses métodos de forma não estática sem instanciar as classes. Sabem como resolver o problema no contexto do meu programa?

Suprimi algumas classes e informações dentro delas pra não criar muita poluição. Se acharem que precisam de mais coisas do código avisem. Obrigado só por ler.

 


package Controle;



import Interface.Cadastro;
import Modelo.Pessoa;
import java.util.ArrayList;




public class Controle {
    
    ArrayList<Pessoa> nota = new ArrayList(20);
    int ponteiro=0;
    Pessoa pessoa = new Pessoa(); 
    public Cadastro cadastro = new Cadastro();
    
    public void cadastrarPessoa (){
        
        pessoa = new Pessoa();
        pessoa.setNome("joao");
        pessoa.setNome(cadastro.getNomeCadastro().getText());
        pessoa.setEmail(cadastro.getEmailCadastro().getText());
        pessoa.setData(cadastro.getDataCadastro().getText());
        pessoa.setCpf(cadastro.getCpfCadastro().getText());
        pessoa.setRg(cadastro.getRgCadastro().getText());
        pessoa.setTelefone(cadastro.getTelefoneCadastro().getText());
        pessoa.setEndereco(cadastro.getEnderecoCadastro().getText());
        nota.add(ponteiro, pessoa); 
        ponteiro++;
        System.out.println(pessoa.getNome());
    }
    
       


    
}




package Interface;


import Controle.Controle;
import javax.swing.JButton;
import javax.swing.JTextField;


/**
 *
 * @author MEGAWARE
 */
public class Cadastro extends javax.swing.JFrame {


    Controle controle=new Controle();


    
    
    public Cadastro() {


        initComponents();
        
    }


private void initComponents() {
...
...
...
}


private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                         
        // TODO add your handling code here:
        
        
        controle.cadastrarPessoa();
        
        
        
        
    }
Editado por Simon Viegas
Inserir tag CÓDIGO

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não necessidade de você instanciar a classe Cadastro dentro da classe controle (Olhando apenas para o que foi postado). Passe apenas o valor dos textBox para o método cadastrarPessoa da classe controle.

Exemplo:

public class Controle {        ArrayList<Pessoa> nota = new ArrayList(20);    int ponteiro=0;    Pessoa pessoa = new Pessoa();         public void cadastrarPessoa (String nomeCadastro, String emailCadastro, String dataNascimento){                pessoa = new Pessoa();        pessoa.setNome("joao");        pessoa.setNome(nomeCadastro);        pessoa.setEmail(emailCadastro);        pessoa.setData(dataNascimento);                nota.add(ponteiro, pessoa);         ponteiro++;        System.out.println(pessoa.getNome());    }                }

No evento do click do botão da classe cadastro:

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                         	        // TODO add your handling code here:		        controle.cadastrarPessoa(getNomeCadastro().getText(), getEmailCadastro().getText(), getDataCadastro().getText());	   	    }

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário






Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×