2010-05-11 49 views
5

當我運行我的應用程序時,出現此異常。我不知道這裏發生了什麼問題。有人可以幫忙嗎?Java Swing GUI異常 - 線程「AWT-EventQueue-0」中的異常java.util.NoSuchElementException:向量枚舉

異常在線程 「AWT-EventQueue的 - 0」 java.util.NoSuchElementException:矢量枚舉 在java.util.Vector中的$ 1.nextElement(Vector.java:305) 在javax.swing.plaf.basic中.BasicTableHeaderUI.getPreferredSize(BasicTableHeaderUI.java:778) at javax.swing.JComponent.getPreferredSize(JComponent.java:1634) at javax.swing.ViewportLayout.preferredLayoutSize(ViewportLayout.java:78) at java.awt.Container .preferredSize(Container.java:1599) at java.awt.Container.getPreferredSize(Container.java:1584) at javax.swing.JComponent.getPreferredSize(JComponent.java:1636) javax.swing.ScrollPaneLayout.layoutContainer(ScrollPaneLayout.java:702) 在java.awt.Container.layout(Container.java:1421) 在java.awt.Container.doLayout(Container.java:1410) 在java.awt.Container.validateTree(Container.java:1507) at javax.swing.RepaintManager.validateInvalidComponents(RepaintManager.java:669) at javax。java.awt.Container.validate(Container.java:1480) swing.SystemEventQueueUtilities $ ComponentWorkRequest.run(SystemEventQueueUtilities.java:124) at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209) at java.awt.EventQueue.dispatchEvent(EventQueue.java:597) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269) 在java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184) 在java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174) 在java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169) 在java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161) 在java.awt.EventDispatchThread.run(EventDispatchThread.java:122)

回答

6

這樣的問題,當您嘗試更新外Swing組件通常發生事件調度線程(EDT)。

有關更多信息和解決方案,請參閱Concurrency的Swing教程。

還要確保使用SwingUtilities.invokeLater(...)在GUI上構建GUI。從Swing教程下載任何示例,您將看到如何完成此操作。由於您似乎正在使用JTable從「如何使用表」一節中的SimpleTableDemo開始。