Originariamente inviato da Wahnsinn
il nuovo pannello è un oggetto jpanel con svariati componenti al suo interno.. il mio obiettivo è quello di aggiungere un componente di questo genere ogni volta che clicco sul bottone, tra l'altro mi sta venendo il dubbio se si possa fare una cosa del genere con layout absolute o meno...avevo provato col flow layout ma ho avuto non poche difficoltà a piazzare i componenti dove volevo io...usando il free design si possono aggiungere componenti dinamicamente o devo per forza usare un layout?
Allora chiariamo bene.
Una cosa è non usare un layout manager per un certo Container.
codice:
JPanel cont = new JPanel();
cont.setLayout(null); // No layout
JButton b = new JButton("aaa");
b.setBounds(10, 10, 100, 30); // Serve!!!! O setBounds() o setLocation()+setSize().
cont.add(b);
Se un "contenitore" non ha layout, i componenti devono essere posizionati/dimensionati esplicitamente.
Un'altra cosa è usare un layout manager che in NetBeans si chiama, guarda caso, AbsoluteLayout.
codice:
JPanel cont = new JPanel();
cont.setLayout(new AbsoluteLayout()); // Il AbsoluteLayout di NetBeans
JButton b = new JButton("aaa");
cont.add(b, new AbsoluteConstraints(10, 10, 100, 30));
Più chiaro ora?
E se l'add lo fai dopo che il container è già visibile (come nel tuo caso a seguito di un evento successivo), allora avendo AbsoluteLayout devi fare un validate() sul tuo jPanel1.