NullPointerException

Murdoc
12 de Abril del 2006
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class pedirdatos extends JFrame
{
private TextField matrix[][];
private Panel panel1,panel2,panel3;
private TextField variables, restricciones;
private Container contenedor;

public pedirdatos()
{
super("pedirdatos");

contenedor=getContentPane();
contenedor.setLayout(new BorderLayout());

panel1=new Panel(new BorderLayout());
variables=new TextField("variables");
restricciones=new TextField("restricciones");
panel1.add(variables, BorderLayout.NORTH);
panel1.add(restricciones, BorderLayout.SOUTH);


Button boton=new Button("aceptar");
panel2=new Panel();
panel2.add(boton);




boton.addActionListener(
new ActionListener()
{
public void actionPerformed(ActionEvent evento)
{ int n,m;
n=Integer.parseInt(variables.getText());
m=Integer.parseInt(restricciones.getText());

matrix=new TextField [n][m];
panel3=new Panel(new BorderLayout());
for(int i=0;i<n;i++)
for(int j=0;j<m;j++)
{
matrix[i][j]=new TextField();
}

for(int i=0;i<n;i++)
for(int j=0;j<m;j++)
{
panel3.add(matrix[i][j]);
}
}
}
);


contenedor.add(panel1, BorderLayout.NORTH);
contenedor.add(panel2, BorderLayout.SOUTH);
contenedor.add(panel3, BorderLayout.CENTER);

setSize(350,350);
setVisible(true);

}

public static void main(String[] args)
{
pedirdatos aplicacion=new pedirdatos();
aplicacion.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}

Jakko
12 de Abril del 2006
Lo que la maquina virtual te pide es que implementes una excepcion en tu codigo, la excepcion es la siguiente:

public pedirdatos(){
super("pedirdatos");

try {
contenedor=getContentPane();
contenedor.setLayout(new BorderLayout());

panel1=new Panel(new BorderLayout());
variables=new TextField("variables");
...
...
...
contenedor.add(panel1, BorderLayout.NORTH);
contenedor.add(panel2, BorderLayout.SOUTH);
contenedor.add(panel3, BorderLayout.CENTER);
}catch(NullPointerException ex){};

setSize(350,350);
setVisible(true);
}

Pero aun debes arreglar tu codigo en especial al generar la matris , espero que te sirva este comentario.