2010-05-11 14 views
5

Ricevo questa eccezione quando eseguo la mia applicazione. Non ho idea di cosa stia succedendo qui. Qualcuno può aiutare per favore.Eccezione GUI Java Swing - Eccezione nel thread "AWT-EventQueue-0" java.util.NoSuchElementException: Enumerazione vettoriale

Exception in thread "AWT-EventQueue-0" java.util.NoSuchElementException: Vector enumerazione a java.util.Vector $ 1.nextElement (Vector.java:305) a javax.swing.plaf.basic .BasicTableHeaderUI.getPreferredSize (BasicTableHeaderUI.java:778) a javax.swing.JComponent.getPreferredSize (JComponent.java:1634) a javax.swing.ViewportLayout.preferredLayoutSize (ViewportLayout.java:78) a java.awt.Container .preferredSize (Container.java:1599) su java.awt.Container.getPreferredSize (Container.java:1584) su javax.swing.JComponent.getPreferredSize (JComponent.java:1636) a javax.swing.ScrollPaneLayout.layoutContainer (ScrollPaneLayout.java:702) a java.awt.Container.layout (Container.java:1421) a java.awt.Container.doLayout (Container.java:1410) a java.awt.Container.validateTree (Container.java:1507) a java.awt.Container.validate (Container.java:1480) a javax.swing.RepaintManager.validateInvalidComponents (RepaintManager.java:669) a javax. swing.SystemEventQueueUtilities $ ComponentWorkRequest.run (SystemEventQueueUtilities.java:124) a java.awt.event.InvocationEvent.dispatch (InvocationEvent.java:209) a java.awt.EventQueue.dispatchEvent (EventQueue.java:597) a java.awt.EventDispatchThread.pumpOneEventForFilters (EventDispatchThread.java:269) a java.awt.EventDispatchThread.pumpEventsForFilter (EventDispatchThread.java:184) a java.awt.EventDispatchThread.pumpEventsForHierarchy (EventDispatchThread.java:174) a java.awt.EventDispatchThread.pumpEvents (EventDispatchThread.java:169) a java.awt.EventDispatchThread.pumpEvents (EventDispatchThread.java:161) a java.awt.EventDispatchThread.run (EventDispatchThread.java:122)

risposta

6

Problemi di questo genere accadono quando si tenta di aggiornare un componente swing esterno del thread di invio eventi (EDT).

Leggere la sezione dal tutorial Swing su Concurrency per ulteriori informazioni e la soluzione.

Assicurarsi inoltre che la GUI sia costruita sull'EDT utilizzando SwingUtilities.invokeLater (...). Scarica qualsiasi esempio dal tutorial di Swing e vedrai come è fatto. Poiché sembra che tu stia utilizzando un JTable, inizia con SimpleTableDemo dalla sezione "Come usare le tabelle".

Problemi correlati