Olá senhores. Estou encontrando um problema no código abaixo:
Digito os valores e estou recebendo null.
package Principal;
import java.awt.Container;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JTextField;
public class AdicionaArmas extends JFrame {
String nome, nacionalidade, calibre;
JTextField nom, nacio, cal;
JLabel l1, l2, l3;
JButton adiciona = new JButton("Adicionar");
public void adiciona() {
l1 = new JLabel("Digite o nome da Arma: ");
nom = new JTextField();
l2 = new JLabel("Digite a nacionalidade da Arma");
nacio = new JTextField();
l3 = new JLabel("Digite o Calibre");
cal = new JTextField();
this.setVisible(true);
JButton Add = new JButton("Ok");
Container c = getContentPane();
c.setLayout(new GridLayout(4, 2));
c.add(l1);
c.add(nom);
c.add(l2);
c.add(nacio);
c.add(l3);
c.add(cal);
c.add(Add);
c.add(adiciona);
c.setSize(3, 2);
pack();
Add.addActionListener(new ADDListener());
adiciona.addActionListener(new adicionaListener());
c.show();
System.out.println(this.nome+this.calibre+this.nacionalidade);
}
public String toString() {
return "Nome: " + this.nome + " " + " Nacionalidade: "
+ this.nacionalidade + " " + " Calibre: " + this.calibre;
}
public static void main(String[] args) {
AdicionaArmas AA = new AdicionaArmas();
AA.adiciona();
}
class adicionaListener implements ActionListener {
public void actionPerformed(ActionEvent e) {
nome = nom.getText();
nacionalidade = nacio.getText();
calibre = cal.getText();
JOptionPane.showMessageDialog(null, "Arma Adicionada!");
}
}
class ADDListener implements ActionListener {
public void actionPerformed(ActionEvent e) {
dispose();
}
}
}
A imagem abaixo é para ver como ele aparece.
na linha doSystem.out.println(this.nome+this.calibre+this.nacionalidade);
O que estou fazendo de errado?
