Hola amigos del foto, me gustaria que me ayudaran con este metodo como puedo arreglarlo, estoy trabajando en un programa en el cual tengo que crear N botones(representan conjuntos) los cuales no puede repetir su nombre asi que utilizo listas pero si el nombre del elemento ya existe aun asi me retorna el nombre del conjunto pero para esto mando llamar el mismo metodo( nombreConjunto(); ) y quiero que me digan si hay una mejor opcion; mi segundo problema es que al cerrar la ventana donde pido el nombre del conjunto por ejemplo si doy click en cancelar o cerrar ventana me tira las excepciones que vienen despues del codigo, les agradecere mucho su ayuda!!
saludos
PD. No quise escribir todo el codigo por que es mucho, pero si es necesario para una mejor apreciacion(aunque no lo creo) me avisan...
public String nombreConjunto()
{
try
{
nombreBoton = JOptionPane.showInputDialog(null,"Escribe el nombre del conjunto","Nombre del conjunto",1);
nodo encontrado;
encontrado = listina.buscarlis(nombreBoton);
if(encontrado != null)
{
JOptionPane.showMessageDialog(null,"El nombre del conjunto ya existe");
nombreConjunto();
}
else
{
listina.insertarprimero(nombreBoton);
}
}
catch(NullPointerException exception)
{}
while(nombreBoton.equals("")||nombreBoton.charAt(0)==' ')
{
try
{
nombreBoton = JOptionPane.showInputDialog(null,"Escribe el nombre del conjunto","Nombre del conjunto",1);
}
catch(NullPointerException exxx)
{}
}
return nombreBoton;
}
ClickC1
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at 1mpuls0.productoCartesiano.nombreConjunto(productoCartesiano.java:529
)
at 1mpuls0.productoCartesiano.agregarBoton(productoCartesiano.java:465)
at 1mpuls0.productoCartesiano.botConjuntosActionPerformed(productoCartes
iano.java:373)
at 1mpuls0.productoCartesiano.access$000(productoCartesiano.java:12)
at 1mpuls0.productoCartesiano$1.actionPerformed(productoCartesiano.java:
118)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:19
95)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.jav
a:2318)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel
.java:387)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242
)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonL
istener.java:236)
at java.awt.Component.processMouseEvent(Component.java:6038)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3265)
at java.awt.Component.processEvent(Component.java:5803)
at java.awt.Container.processEvent(Container.java:2058)
at java.awt.Component.dispatchEventImpl(Component.java:4410)
at java.awt.Container.dispatchEventImpl(Container.java:2116)
at java.awt.Component.dispatchEvent(Component.java:4240)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4322
)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3986)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3916)
at java.awt.Container.dispatchEventImpl(Container.java:2102)
at java.awt.Window.dispatchEventImpl(Window.java:2429)
at java.awt.Component.dispatchEvent(Component.java:4240)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThre
ad.java:273)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.
java:183)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThre
ad.java:173)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:168)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:160)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:121)
Press any key to continue...