JInternalFrame não abre

Pessoal, eu tenho um internal com um botao que abre outro. Abre uma vez, eu fecho, abro de novo, fecho, mas na terceira vez ele não abre e dar esse erro:

Exception in thread "AWT-EventQueue-0" java.lang.IllegalArgumentException: illegal component position
	at java.awt.Container.addImpl(Container.java:1034)
	at javax.swing.JLayeredPane.addImpl(JLayeredPane.java:209)
	at javax.swing.JDesktopPane.addImpl(JDesktopPane.java:470)
	at java.awt.Container.add(Container.java:352)
	at telas.ConsultaClientes$3.actionPerformed(ConsultaClientes.java:187)
	at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
	at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
	at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
	at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
	at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
	at java.awt.Component.processMouseEvent(Component.java:6038)
	at javax.swing.JComponent.processMouseEvent(JComponent.java:3260)
	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(EventDispatchThread.java:273)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:183)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.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)

E eu coloquei um flag pra dizer se tem uma tela aberta ele diz que a tela abriu mesmo assim. Mas ela nao aparece.

Alguém pode me ajudar?

Abraço

Exception in thread "AWT-EventQueue-0" java.lang.IllegalArgumentException: illegal component position

Você está usando algum algoritmo para posicionar o internal frame? Pelo o que a excessão está “dizendo” parece que você está posicionando o componente em um lugar não permitido (um valor negativo para x por exemplo - é só um chute :wink: ).

Até mais!

Eu tou usando apenas o setBounds(); para o internal. E eu não entendo porque funciona duas vezes e depois não funcina mais.

Abraço