Ihr habt diese Frage schon sicherlich ein paarmal beantwortet, aber meine Suche im Forum war leider nicht von erfolg gekrönt.. (kann auch an mir Blindgänger liegen..)
Ich habe ein JPanel (hier p_choose) mit GridLayout
Inhalt: 16x16 JCheckboxen
Ziel: bei Klick auf Button (hier b_add) soll eine zusätzliche Spalte Checkboxen am Ende eingefügt werden..
in der Initialisierung:
im Actionlistener
Wie man sieht habe ich schon ein wenig probiert (siehe ab validate())
Das Programm hängt sich aber nach dem Drücken des Button auf!
Was mache ich verkehrt?
Vielen Dank..
PS: Wenn das Problem schon mal in der Form beantwortet wurde, reicht mir auch ein link..
Ich habe ein JPanel (hier p_choose) mit GridLayout
Inhalt: 16x16 JCheckboxen
Ziel: bei Klick auf Button (hier b_add) soll eine zusätzliche Spalte Checkboxen am Ende eingefügt werden..
in der Initialisierung:
Java:
GridLayout raster = new GridLayout(16,16);
raster.setVgap(1);
raster.setHgap(2);
p_choose = new JPanel(raster);
al_checkboxes = new ArrayList<JCheckBox>();
p_background.add(BorderLayout.CENTER, p_choose);
for (int i = 0; i<256; i++){
JCheckBox cb = new JCheckBox();
cb.setSelected(false);
al_checkboxes.add(cb);
p_choose.add(cb);
}
Java:
if(e.getSource() == b_add){
p_choose.removeAll();
p_choose.repaint();
p_choose.setLayout(new GridLayout(16,(al_checkboxes.size()/16)+1,2,1));
for (int i = 0; i<(al_checkboxes.size()+16); i++){
JCheckBox cb = new JCheckBox();
cb.setSelected(false);
al_checkboxes.add(cb);
p_choose.add(cb);
}
p_choose.validate();
p_choose.repaint();
p_choose.updateUI();
p_choose.doLayout();
}
Das Programm hängt sich aber nach dem Drücken des Button auf!
Was mache ich verkehrt?
Vielen Dank..
PS: Wenn das Problem schon mal in der Form beantwortet wurde, reicht mir auch ein link..