C'è un modo per scorrere su un elenco di componenti e aggiungerli a un gruppo parallelo in Swing GroupLayout?Come aggiungere iterativamente i componenti a un gruppo SwingLayout ParallelGroup?
Sembra difficile perché non esiste un metodo per entrare in possesso di ParallelGroup.
Ecco il codice che genera un elenco di componenti (in questo caso, JCheckBoxes).
List<JCheckBox> listCustomiseJCB = new ArrayList<>();
for (int w = 0; w < initialCMTableColumns.size(); w++) {
String heading = (String)initialCMTableColumns.get(w).getHeaderValue();
listCustomiseJCB.add(new JCheckBox(heading));
}
L'elenco è in funzione, ma come posso iterare l'elenco per inserire ogni JCheckBox in ParallelGroup di un GroupLayout? Ad esempio, il codice seguente non verrà compilato.
GroupLayout gl = new GroupLayout(jpnlCustomise);
jpnlCustomise.setLayout(gl);
gl.setAutoCreateContainerGaps(true);
gl.setAutoCreateGaps(true);
GroupLayout.SequentialGroup hGroup = gl.createSequentialGroup();
hGroup
.addComponent(jbtnApply);
hGroup.addGroup(gl.createParallelGroup(GroupLayout.Alignment.CENTER)
// ERRORS BEGIN HERE
{ for (JCheckBox c: listCustomiseJCB) {
.addComponent(c);
}});
// ERRORS END HERE
hGroup
.addComponent(jbtnCancel);
gl.setHorizontalGroup(hGroup);
In alternativa, qualcuno sa di un modo per entrare in possesso di un ParallelGroup in modo che potessi iterativamente aggiungere componenti a quel gruppo in uno standalone per il ciclo?
+1 per l'utilizzo GroupLayout, il migliore, ma la maggior parte sottoutilizzata Layout Manager IMHO. – Adam
Grazie. Mi piace anche GroupLayout, è così efficace! – Arvanem
C'è un esempio (meno flessibile) [qui] (http://stackoverflow.com/a/8504753/230513). – trashgod