Me quede trabado en la parte donde por medio de un ArrayList guardo los datos que ingreso. Ya que al ejecutar el jframe, al momento de guardar los datos me sale el siguiente error en la consola:
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
Les muestro los códigos que tengo hechos:
Código:
public class People {
int Documento;
String Nombre;
String Apellido;
public People() {}
public People(int d, String n, String a) {
this.Documento=d;
this.Nombre=n;
this.Apellido=a;
}
public int getDocumento() {
return Documento;
}
public void setDocumento(int documento) {
Documento = documento;
}
public String getNombre() {
return Nombre;
}
public void setNombre(String nombre) {
Nombre = nombre;
}
public String getApellido() {
return Apellido;
}
public void setApellido(String apellido) {
Apellido = apellido;
}
public String toString() {
return ("El DNI es: " +Documento+ "\n El nombre es: " +Nombre+ "\n El apellido es: " +Apellido);
}
}
Código:
import java.awt.BorderLayout;
import java.awt.EventQueue;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JTextField;
import javax.swing.JButton;
import java.awt.event.ActionListener;
import java.util.ArrayList;
import java.awt.event.ActionEvent;
public class Ventana extends JFrame {
private JPanel contentPane;
private JTextField textField;
private JTextField txt_nombre;
private JTextField txt_apellido;
ArrayList<People> array=new ArrayList<People>();
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
Ventana frame = new Ventana();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the frame.
*/
public Ventana() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 450, 300);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);
JLabel txt_dni = new JLabel("Ingrese dni");
txt_dni.setBounds(30, 11, 145, 14);
contentPane.add(txt_dni);
textField = new JTextField();
textField.setBounds(150, 8, 86, 20);
contentPane.add(textField);
textField.setColumns(10);
JButton btnBuscar = new JButton("Buscar");
btnBuscar.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
for(int i=0; i<array.size(); i++) {
txt_dni.setText(""+array.get(i).getDocumento());
txt_nombre.setText(""+array.get(i).getNombre());
txt_apellido.setText(""+array.get(i).getApellido());
}
}
});
btnBuscar.setBounds(287, 7, 89, 23);
contentPane.add(btnBuscar);
JLabel lblNombre = new JLabel("Nombre");
lblNombre.setBounds(10, 86, 46, 14);
contentPane.add(lblNombre);
txt_nombre = new JTextField();
txt_nombre.setBounds(139, 83, 86, 20);
contentPane.add(txt_nombre);
txt_nombre.setColumns(10);
JLabel lblApellido = new JLabel("Apellido");
lblApellido.setBounds(10, 134, 46, 14);
contentPane.add(lblApellido);
txt_apellido = new JTextField();
txt_apellido.setBounds(139, 131, 86, 20);
contentPane.add(txt_apellido);
txt_apellido.setColumns(10);
JButton btnGuardar = new JButton("Guardar");
btnGuardar.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
int Documento;
int contador=0;
String Nombre,Apellido;
Documento=Integer.parseInt(txt_dni.getText());
Nombre=txt_nombre.getText();
Apellido=txt_apellido.getText();
People p=new People();
p.setDocumento(Documento);
p.setNombre(Nombre);
p.setApellido(Apellido);
array.add(p);
contador++;
JOptionPane.showMessageDialog(null, "Los datos se han guardado correctamente");
txt_dni.setText("");
txt_nombre.setText("");
txt_apellido.setText("");
}
});
btnGuardar.setBounds(21, 207, 89, 23);
contentPane.add(btnGuardar);
JButton btnCancelar = new JButton("Cancelar");
btnCancelar.setBounds(120, 207, 89, 23);
contentPane.add(btnCancelar);
JButton btnSalir = new JButton("Salir");
btnSalir.setBounds(219, 207, 89, 23);
contentPane.add(btnSalir);
}
}