2010-05-11 8 views
5

Ich bekomme diese Ausnahme, wenn ich meine Anwendung ausführen. Ich habe keine Ahnung, was hier falsch läuft. Kann mir bitte jemand helfen.Java Swing GUI Ausnahme - Ausnahme im Thread "AWT-EventQueue-0" java.util.NoSuchElementException: Vektor Enumeration

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

Antwort

6

Probleme wie dies in der Regel passieren, wenn Sie versuchen, außerhalb einer Swing-Komponente zu aktualisieren des Ereignis Dispatch Thread (EDT).

Lesen Sie den Abschnitt aus dem Swing-Tutorial auf Concurrency für weitere Informationen und die Lösung.

Stellen Sie außerdem mithilfe von SwingUtilities.invokeLater (...) sicher, dass die GUI auf dem EDT erstellt wird. Laden Sie ein beliebiges Beispiel aus dem Swing-Tutorial herunter und Sie werden sehen, wie dies gemacht wird. Da Sie scheinbar einen JTable-Start mit SimpleTableDemo aus dem Abschnitt "Wie Sie Tabellen verwenden" verwenden.

Verwandte Themen