Also zu allererst:
Ich weiß, dass man Vectoren nicht benutzen soll. Mich würde aber interessieren, wieso sich bei mir dieses Problem auftut.
Ich mache ein JTable und übergebe diesem, Strings aus anderen Objekten:
Diese Objekte lassen sich alle casten, siehe auch die Generics. Eclipse gibt mir keine Fehler aus, erst wenn ich das Programm starte. Aus der Exception kann ich nicht viel herauslesen, ich hatte noch nie so eine Exception. Aber gut, hier für die Profis :
btw: diese zeile hier:
entspricht:
Ich weiß, dass man Vectoren nicht benutzen soll. Mich würde aber interessieren, wieso sich bei mir dieses Problem auftut.
Ich mache ein JTable und übergebe diesem, Strings aus anderen Objekten:
Java:
Vector<String> rowData = new Vector<String>(50, 5);
Vector<String> columnNames = new Vector<String>(50, 5);
for (int x = 0; x < creator.getClients().size(); x++)
{
rowData.add(creator.getClients().elementAt(x).name);
rowData.add(Integer.toString(creator.getClients()
.elementAt(x).datumVertrag.tag)
+ Integer.toString(creator.getClients()
.elementAt(x).datumVertrag.monat)
+ Integer.toString(creator.getClients()
.elementAt(x).datumVertrag.jahr));
rowData.add(Integer.toString(creator.getClients()
.elementAt(x).anzahlBoxen));
}
columnNames.add("Nom");
columnNames.add("Date du contrat: ");
columnNames.add("Nombre de box: ");
JTable table = new JTable(rowData, columnNames);
mainPanel4.add(new JScrollPane(table));
add(mainPanel4);
validate();
repaint();
Diese Objekte lassen sich alle casten, siehe auch die Generics. Eclipse gibt mir keine Fehler aus, erst wenn ich das Programm starte. Aus der Exception kann ich nicht viel herauslesen, ich hatte noch nie so eine Exception. Aber gut, hier für die Profis :
Java:
Exception in thread "AWT-EventQueue-0" java.lang.ClassCastException: java.lang.String cannot be cast to java.util.Vector
at javax.swing.table.DefaultTableModel.justifyRows(DefaultTableModel.java:268)
at javax.swing.table.DefaultTableModel.setDataVector(DefaultTableModel.java:224)
at javax.swing.table.DefaultTableModel.<init>(DefaultTableModel.java:159)
at javax.swing.JTable.<init>(JTable.java:668)
at renouvBoxHelper.GUIMaker$3.actionPerformed(GUIMaker.java:120)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2018)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2341)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
at javax.swing.AbstractButton.doClick(AbstractButton.java:376)
at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:833)
at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:877)
at java.awt.Component.processMouseEvent(Component.java:6505)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3321)
at java.awt.Component.processEvent(Component.java:6270)
at java.awt.Container.processEvent(Container.java:2229)
at java.awt.Component.dispatchEventImpl(Component.java:4861)
at java.awt.Container.dispatchEventImpl(Container.java:2287)
at java.awt.Component.dispatchEvent(Component.java:4687)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4492)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422)
at java.awt.Container.dispatchEventImpl(Container.java:2273)
at java.awt.Window.dispatchEventImpl(Window.java:2719)
at java.awt.Component.dispatchEvent(Component.java:4687)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:703)
at java.awt.EventQueue.access$000(EventQueue.java:102)
at java.awt.EventQueue$3.run(EventQueue.java:662)
at java.awt.EventQueue$3.run(EventQueue.java:660)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
at java.awt.EventQueue$4.run(EventQueue.java:676)
at java.awt.EventQueue$4.run(EventQueue.java:674)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:673)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:244)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:163)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:147)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:139)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:97)
btw: diese zeile hier:
Java:
at renouvBoxHelper.GUIMaker$3.actionPerformed(GUIMaker.java:120)
entspricht:
Java:
JTable table = new JTable(rowData, columnNames);