Zugriff auf lokal definierte JButtons in einem GridLayout-JPanel

Nehmen wir an, Sie haben ein GridLayout von JButtons in einem NxN-Raster, in Code wie diesem:

<code>JPanel bPanel = new JPanel();
bPanel.setLayout(new GridLayout(N, N, 10, 10));
    for (int row = 0; row < N; row++)
    {
        for (int col = 0; col < N; col++)
        {
            JButton b = new JButton("(" + row + ", " + col + ")");
            b.addActionListener(new ActionListener()
            {
                public void actionPerformed(ActionEvent e)
                {

                }
            });
            bPanel.add(b);
        }
    }
</code>

Wie kann man auf jede Schaltfläche im Raster einzeln zugreifen, um den Namen der Schaltfläche über setText () zu ändern? Dies muss außerhalb des tatsächlichen Drückens der fraglichen Taste erfolgen.

Da jede Schaltfläche lokal als "b" instanziiert wird, ist ein global zugänglicher Name für jede Schaltfläche derzeit nicht möglich. Was kann getan werden, um auf jede Taste unabhängig zuzugreifen? Könnte ein Array wie JButton [] [] Verweise auf alle Schaltflächen enthalten? Wie kann dies im obigen Code eingestellt werden?

Jede Eingabe wird geschätzt.

Vielen Dank.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage