JButtons dentro de JPanels com um GridLayout JFrame
Java / Eclipse IDE aqui.
Eu tenho um JFrame que é definido como um GridLayout de tamanho NxN. N é dado pelo usuário como uma linha de comando no início do programa. Os JButtons em um padrão NxN são adicionados à janela em JPanels, definidos no local por GridLayout (eu acho).
Cada JButton precisa do seu próprio JPanel para usar o GridLayout? Tenho a impressão de que você pode configurar apenas um JPanel para todos os botões e definir o JPanel para um GridLayout para os JButtons. Eu quero adicionar outro JPanel à esquerda da matriz de botões para exibir os cliques do botão (JLabel) e um botão de reset dentro do mesmo JPanel à esquerda.
Aqui está (um pouco) meu código, onde N é dado pelo usuário, system é minha classe de processos de background e ButtonEvent é a classe de ActionListener / actionPerformed:
<code>JFrame window = new JFrame(""); GridLayout layout = new GridLayout(N,N); window.setLayout(layout); for (int row = 0; row < N; row++){ for (int col = 0; col < N; col++){ JPanel panel = new JPanel(); JButton b = new JButton ("("+row+","+col+")"); window.add(b).setLocation(row, col); panel.add(b); b.addActionListener(new ButtonEvent(b, system, row, col)); window.add(panel); } } window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); window.pack(); window.setVisible(true); </code>
E é isso que eu tenho (N = 4):
Aqui está (aproximadamente) o que estou procurando (N = 4):
Tudo o que eu preciso / quero são dois (ou mais) JPanels que são configurados aproximadamente como acima, e todos os gerenciadores de layout que eu tentei não funcionam bem com o JFrame de layout GridLayout.
Quaisquer recomendações quanto a uma solução melhor são convidadas.
Obrigado!