Em Java, ao usar o BorderLayout, é possível ter dois painéis no CENTER, mas ambos estão visíveis no formulário.
Aqui está o meu código:
guiFrame.add(guiFieldsPanel, BorderLayout.CENTER);
guiFrame.add(guiButtonsPanel, BorderLayout.CENTER);
guiFrame.setVisible(true);
No código acima, ambos os painéis são definidos para o centro, mas só posso ver o guiButtonsPanel como está "no topo" do guiFieldsPanel.
Posso agrupar os dois painéis juntos e depois configurá-los para serem exibidos no CENTER?
Respostas:
3 para resposta № 1Veja o Exemplo de layout aninhado para idéias sobre como combinar layouts para criar o layout desejado. POR EXEMPLO.
Talvez use uma única linha GridLayout
para o centro.
guiFrame.add(guiFieldsPanel, BorderLayout.CENTER);
guiFrame.add(guiButtonsPanel, BorderLayout.CENTER);
Mas isso sugere uma coluna 2 GroupLayout
como visto em esta resposta. POR EXEMPLO.
1 para resposta № 2
Você precisará criar um painel intermediário que conterá ambos guiFieldsPanel
e guiButtonsPanel
e, em seguida, adicione-o ao layout da borda.
final JPanel centre = new JPanel(new FlowLayout(FlowLayout.LEFT, 0, 0));
centre.add(guiFieldsPanel);
centre.add(guiButtonsPanel);
guiFrame.add(centre, BorderLayout.CENTER);
guiFrame.setVisible(true);
Você pode ajustar o layout de centre
conforme apropriado para suas necessidades com respeito ao posicionamento relativo de guiFieldsPanel
e guiButtonsPanel
.