ActionListeners [RESOLVIDO]

3 respostas
CondeGil

Oi pessoal :)
Estou aqui com um problema e precisava de ajuda urgente. Estou fazendo um programa com o código abaixo e quando executo, os dados que o utilizador escreve nos TextField só são gravados caso ele carregue enter no final, caso contrario nada acontece. Alguém sabe como se faz para actualizar tudo quando se carrega no JButton? :cry:

public exFrame(){
		CalculoClotoide clotoide = new CalculoClotoide();
		double[] vec = new double[4];
		
		//especificaçoes da janela inicial
		this.setTitle("Cálculo clotoide");
		this.setSize(500,500);		
		this.getContentPane().setLayout(new BorderLayout(10, 10));
		
		//criar e acrescentar grelha superior
		JPanel gridA=new JPanel();
		gridA.setLayout(new GridLayout(1,2));
		this.getContentPane().add(gridA,BorderLayout.CENTER);
		JPanel gridA1=new JPanel();
		gridA1.setLayout(new GridLayout(9,1));
		gridA.add(gridA1);
		
		//Add elementos a gridA1
		JLabel a1 = new JLabel("Quilometragem do ponto de interseccao das tangentes (m):");
		gridA1.add(a1);
		JTextField a2=new JTextField();
		a2.addActionListener(new ActionText(a2,0, vec));
		gridA1.add(a2);
		
		JLabel b1 = new JLabel("Angulo de dupla deflexao do arco circular original em graus:");
		gridA1.add(b1);
		JTextField b2=new JTextField();
		b2.addActionListener(new ActionText(b2,1, vec));
		gridA1.add(b2);
		
		JLabel c1 = new JLabel("Grau da curva em graus:");
		gridA1.add(c1);
		JTextField c2=new JTextField();
		c2.addActionListener(new ActionText(c2,2, vec));
		gridA1.add(c2);
		
		JLabel d1 = new JLabel("Comprimento da clotoide (m):");
		gridA1.add(d1);
		JTextField d2=new JTextField();
		d2.addActionListener(new ActionText(d2,3, vec));
		gridA1.add(d2);
		
		JButton bcalc = new JButton ("CALCULAR");
		bcalc.addActionListener(new ActionBcalc(clotoide, vec));
		gridA1.add(bcalc);
		
	}
}

3 Respostas

R

Não está acontecendo nada quando você clica no JButton? É isso?

WendersonLP

Olha quando você capturar a ação deste botão logo de início você tem que capturar a “String” digitada pelo usuário.

public void actionPerformed(ActionEvent evt) {

         String str = jtextField.getText();

         // resto da ação
}
CondeGil

Problema resolvido, muito obrigado as respostas, era simples, bastava implementar o actionlistner do jtextfield ao botão, para ele receber como açao o clicar do botão em vez de receber como açao o editar o textfield xD bem simples mas embiquei com isto :stuck_out_tongue:

Criado 25 de outubro de 2009
Ultima resposta 29 de out. de 2009
Respostas 3
Participantes 3