Originariamente inviato da kappak_79
Ho usato un JPanel puro.
Innanzitutto vedo che ogni cella JPanel contiene un JLabel. Per quale motivo? Non potresti mettere nelle celle direttamente un JLabel??
Non so cosa vuoi fare di preciso (ovviamente) ma se non ci sono motivi particolari non vedo perché mettere un JPanel!

Comunque in questi casi la soluzione più semplice è la estensione. Indipendentemente da cosa vuoi estendere, se JPanel o JLabel, la TuaClasse può definire 2 proprietà 'riga' e 'colonna' (o chiamale come vuoi), passate al costruttore, assegnate a variabili di istanza e poi leggibili con i soliti metodi getter.
Nel mousePressed() tu sai che il "sorgente" dell'evento è un oggetto della tua classe. Fai il cast e quindi puoi sapere banalmente quelle informazioni.

Originariamente inviato da kappak_79
Con MouseEvent.getComponent()
getComponent() è ok ma è più specifico ... in generale c'è getSource(). Ma nel tuo caso va bene il primo.

Originariamente inviato da kappak_79
c.gridx=j;
c.gridy=i;
Stai usando GridBagLayout ... non GridLayout come avevo pensato all'inizio.