lutoma
08.02.2009, 20:09
Huhu,
für ein kleines Update-System soll der User in einem Dialog per Checkbox auswählen können, was installiert werden soll... Die Checkbox-Sache an sich geht auch, das hab ich momentan so:
JCheckBox[] rdl = { new JCheckBox("update1."),new JCheckBox("update.") };
rdl = new JCheckBox[] { new JCheckBox("In Zukunft nicht mehr fragen.") };
Object[] message = new Object[updates];
message[0] = "Es wurden " + updates + " Updates gefunden.\nWelche sollen Installiert werden?";
message[1] = rdl[0];
message[2] = rdl[1];
Das ganze soll jetzt nurnoch dynamisch sein...
Die zuweisungen bei message[1] = rdl[0] usw. sind kein problem, das kann ich einfach per while-schleife machen. Was mir eher Kopfzerbrechen bereitet ist die Sache, wie ich die Checkboxen an sich erstellen soll.... Wenn ich das ganze so versuche:
JCheckBox[] rdl = { };
i=-1;
while(i < updates){
i++;
rdl[i] = new JCheckBox("update1");
}
Object[] message = new Object[updates];
message[0] = "Es wurden " + updates + " Updates gefunden.\nWelche sollen installiert werden?";
i=-1;
while(i < updates){
i++;
message[i+1] = rdl[i];
}
kompiliert er mir das zwar, aber beim ausführen krieg ich diesen fehler:
Exception in thread "AWT-EventQueue-0" java.lang.ArrayIndexOutOfBoundsException: 0
at start.checkForUpdates(start.java:358)
at start.access$0(start.java:301)
at start$1.actionPerformed(start.java:460)
at javax.swing.AbstractButton.fireActionPerformed(Abs tractButton.java:2012)
at javax.swing.AbstractButton$Handler.actionPerformed (AbstractButton.java:2335)
at javax.swing.DefaultButtonModel.fireActionPerformed (DefaultButtonModel.java:404)
at javax.swing.DefaultButtonModel.setPressed(DefaultB uttonModel.java:259)
at javax.swing.plaf.basic.BasicButtonListener.mouseRe leased(BasicButtonListener.java:253)
at java.awt.Component.processMouseEvent(Component.jav a:6108)
at javax.swing.JComponent.processMouseEvent(JComponen t.java:3276)
at java.awt.Component.processEvent(Component.java:587 3)
at java.awt.Container.processEvent(Container.java:210 5)
at java.awt.Component.dispatchEventImpl(Component.jav a:4469)
at java.awt.Container.dispatchEventImpl(Container.jav a:2163)
at java.awt.Component.dispatchEvent(Component.java:42 95)
at java.awt.LightweightDispatcher.retargetMouseEvent( Container.java:4461)
at java.awt.LightweightDispatcher.processMouseEvent(C ontainer.java:4125)
at java.awt.LightweightDispatcher.dispatchEvent(Conta iner.java:4055)
at java.awt.Container.dispatchEventImpl(Container.jav a:2149)
at java.awt.Window.dispatchEventImpl(Window.java:2478 )
at java.awt.Component.dispatchEvent(Component.java:42 95)
at java.awt.EventQueue.dispatchEvent(EventQueue.java: 604)
at java.awt.EventDispatchThread.pumpOneEventForFilter s(EventDispatchThread.java:275)
at java.awt.EventDispatchThread.pumpEventsForFilter(E ventDispatchThread.java:200)
at java.awt.EventDispatchThread.pumpEventsForHierarch y(EventDispatchThread.java:190)
at java.awt.EventDispatchThread.pumpEvents(EventDispa tchThread.java:185)
at java.awt.EventDispatchThread.pumpEvents(EventDispa tchThread.java:177)
at java.awt.EventDispatchThread.run(EventDispatchThre ad.java:138)
Ich hoffe jemand kann mir helfen ?(
Danke im Voraus, Lutoma
für ein kleines Update-System soll der User in einem Dialog per Checkbox auswählen können, was installiert werden soll... Die Checkbox-Sache an sich geht auch, das hab ich momentan so:
JCheckBox[] rdl = { new JCheckBox("update1."),new JCheckBox("update.") };
rdl = new JCheckBox[] { new JCheckBox("In Zukunft nicht mehr fragen.") };
Object[] message = new Object[updates];
message[0] = "Es wurden " + updates + " Updates gefunden.\nWelche sollen Installiert werden?";
message[1] = rdl[0];
message[2] = rdl[1];
Das ganze soll jetzt nurnoch dynamisch sein...
Die zuweisungen bei message[1] = rdl[0] usw. sind kein problem, das kann ich einfach per while-schleife machen. Was mir eher Kopfzerbrechen bereitet ist die Sache, wie ich die Checkboxen an sich erstellen soll.... Wenn ich das ganze so versuche:
JCheckBox[] rdl = { };
i=-1;
while(i < updates){
i++;
rdl[i] = new JCheckBox("update1");
}
Object[] message = new Object[updates];
message[0] = "Es wurden " + updates + " Updates gefunden.\nWelche sollen installiert werden?";
i=-1;
while(i < updates){
i++;
message[i+1] = rdl[i];
}
kompiliert er mir das zwar, aber beim ausführen krieg ich diesen fehler:
Exception in thread "AWT-EventQueue-0" java.lang.ArrayIndexOutOfBoundsException: 0
at start.checkForUpdates(start.java:358)
at start.access$0(start.java:301)
at start$1.actionPerformed(start.java:460)
at javax.swing.AbstractButton.fireActionPerformed(Abs tractButton.java:2012)
at javax.swing.AbstractButton$Handler.actionPerformed (AbstractButton.java:2335)
at javax.swing.DefaultButtonModel.fireActionPerformed (DefaultButtonModel.java:404)
at javax.swing.DefaultButtonModel.setPressed(DefaultB uttonModel.java:259)
at javax.swing.plaf.basic.BasicButtonListener.mouseRe leased(BasicButtonListener.java:253)
at java.awt.Component.processMouseEvent(Component.jav a:6108)
at javax.swing.JComponent.processMouseEvent(JComponen t.java:3276)
at java.awt.Component.processEvent(Component.java:587 3)
at java.awt.Container.processEvent(Container.java:210 5)
at java.awt.Component.dispatchEventImpl(Component.jav a:4469)
at java.awt.Container.dispatchEventImpl(Container.jav a:2163)
at java.awt.Component.dispatchEvent(Component.java:42 95)
at java.awt.LightweightDispatcher.retargetMouseEvent( Container.java:4461)
at java.awt.LightweightDispatcher.processMouseEvent(C ontainer.java:4125)
at java.awt.LightweightDispatcher.dispatchEvent(Conta iner.java:4055)
at java.awt.Container.dispatchEventImpl(Container.jav a:2149)
at java.awt.Window.dispatchEventImpl(Window.java:2478 )
at java.awt.Component.dispatchEvent(Component.java:42 95)
at java.awt.EventQueue.dispatchEvent(EventQueue.java: 604)
at java.awt.EventDispatchThread.pumpOneEventForFilter s(EventDispatchThread.java:275)
at java.awt.EventDispatchThread.pumpEventsForFilter(E ventDispatchThread.java:200)
at java.awt.EventDispatchThread.pumpEventsForHierarch y(EventDispatchThread.java:190)
at java.awt.EventDispatchThread.pumpEvents(EventDispa tchThread.java:185)
at java.awt.EventDispatchThread.pumpEvents(EventDispa tchThread.java:177)
at java.awt.EventDispatchThread.run(EventDispatchThre ad.java:138)
Ich hoffe jemand kann mir helfen ?(
Danke im Voraus, Lutoma