ciao a tutti, ho un problema con un progetto, allora in pratica ho una scacchiera e volevo fare che, quando un pezzo viene mangiato, questo compare a dx della scacchiera, per fare questo nella classe che mi imposta la struttura della scacchiera ho creato un JPanel e 2 array di JLabel da 16 elementi ciascuno, uno per ogni pezzo di ogni colore, in questa classe poi inizializzo tutti i vari JLabel in questo modo:
codice:
ped_mangiate_nere[i]=new JLabel();
ped_mangiate_nere[i].setHorizontalAlignment( JLabel.CENTER );
ped_mangiate_nere[i].setPreferredSize(new Dimension(70, 40));
pedineMangiate.add(ped_mangiate_nere[i]);
pedineMangiate è il JPanel, poi ho fatto la stessa cosa per le pedine bianche, poi ho aggiunto il Panel alla finestra
codice:
add(pedineMangiate,BorderLayout.EAST);
in precedenza avevo impostato il Panel in questo modo
codice:
pedineMangiate.setLayout(new GridLayout(16,2));
dopo aver fatto questo quando aggiungo un gestore per le azioni ad ogni casella della tastiera, io passo alla classe per gestire gli eventi sia i 2 array di Label che il Panel, e qui per prova ho provato a settare delle immagini a caso quando veniva mangiata una pedina per vedere se funzionasse, in questo modo
codice:
ped_mangiate_bianche[0]=new JLabel(new javax.swing.ImageIcon(getClass().getResource("pedone_bianco.gif")));
pedineMangiate.add(ped_mangiate_bianche[0]);
ora il problema è che, quando eseguo nella finestra compare lo spazio delle 2 Label ma quando mangio una pedina non compare nessuna icona di fianco alla scacchiera, se però io imposto le icone nella classe che disegna la scacchiera prima di iniziare la partita, queste compaiono tutte a fianco della scacchiera
qualche consiglio su come risolvere?