Chcesz ręcznie podzielić komponenty w wielu wierszach? Więc wiesz, gdzie chcesz, żeby była ta linia.
W tym przypadku byłoby użyć 3 panele:
- 1 panelu zawierającego 2 pozostałych płyt z GridLayout z 1 kolumnie
- 2 paneli wewnątrz GridLayout, każdy z FlowLayout
Przykładowy kod:
frame = new JFrame();
frame.setBounds(100, 100, 450, 300);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
{
panel = new JPanel();
frame.getContentPane().add(panel, BorderLayout.NORTH);
panel.setLayout(new GridLayout(0, 1, 0, 0));
{
panel_1 = new JPanel();
panel.add(panel_1);
{
lblPanelFlowlayout = new JLabel("Panel 2: FlowLayout");
panel_1.add(lblPanelFlowlayout);
}
}
{
panel_2 = new JPanel();
panel.add(panel_2);
{
lblPanel = new JLabel("Panel 3: FlowLayout");
panel_2.add(lblPanel);
}
}
}
można dodać dowolną liczbę nowych paneli z FlowL ayout jak chcesz. Za każdym razem, gdy robisz BR, ustawiasz następny panel jako aktywny (możliwe, że kreujesz go dynamicznie).
Heh, zagnieżdżanie jest dobre, ale niewystarczające, tworzy niepotrzebne szczeliny, gdy wysokość pojemnika jest duża. –
Nie ma powodu, aby istniały luki, jeśli je poprawnie zakodowałeś. –
Opublikuj próbkę, jeśli masz na to ochotę. – Buffalo