Buongiorno,

ho costruito un programma con interfaccia grafica GridLayout, per costruire una scacchiera: il mio intento è di partire dalla cella a sinistra, e spostarmi con le freccie direzionali sulla tastiera, per esempio vedere la casella selezionata invece di nera o bianca, verde.
Ho una mezza idea di come usare gli eventi da tastiera, però non ho idea se i JLabel possono essere selezionabili o quant'altro.

La domanda fondamentale è:

esiste una serie di metodi che riescono a farmela selezionare, oppure
devo scartare la GridLayout?

Grazie per la disponibilità

codice:
import java.awt.Color;
import java.awt.GridLayout;
import javax.swing.BorderFactory;
import javax.swing.JFrame;
import javax.swing.JLabel;

public class Main extends JFrame {

    private final int height=10;
    private final int width=11;
    
    public Main () {
        setBounds (100,100,500,500);
        setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE);
        setLayout (new GridLayout(height,width));

        for (int i=0;i<(height*width);i++) {
            JLabel label=new JLabel ();
            
            if (i%2==0)
                label.setBackground(Color.black);
            else
                label.setBackground(Color.white);
            
//            label.setBorder(BorderFactory.createLineBorder(Color.RED));
            label.setBorder(BorderFactory.createLineBorder(Color.RED,2));
            label.setOpaque(true);
            this.add(label);
        }
        setVisible (true);
    }

    public static void main(String[] args) {
        new Main ();
    }

}