/ / Nieprawidłowe odstępy w JPanels przy użyciu BorderLayout - java, swing, jpanel, manager układu, układ granicy

Nieprawidłowy odstęp z JPanels za pomocą BorderLayout - java, swing, jpanel, layout-manager, border-layout

Mam irytujący problem z moimi JPanels, które używają BorderLayout.

    this.setLayout(new BorderLayout(0, 0));
JPanel panel = new JPanel(new BorderLayout(0, 0));
panel.add(new Slot(), BorderLayout.SOUTH);
panel.add(new MapGUI(), BorderLayout.NORTH);

this.add(panel, BorderLayout.CENTER);

To jest w konstruktorze mojego JPanel Inventory. Slot () i MapGUI () to klasy rozszerzające JPanel. Po uruchomieniu gry ekran wygląda następująco: wprowadź opis obrazu tutaj

Najwyraźniej panele są całkowicie wyłączone, a oba są poza ekranem. Jak mogę to naprawić? Dziękuję za wszelką pomoc.

Odpowiedzi:

1 dla odpowiedzi № 1

Według JavaDocs dla BorderLayout:

Elementy są ułożone zgodnie z ichpreferowane rozmiary i ograniczenia wielkości kontenera. Komponenty PÓŁNOCNY i POŁUDNIOWY można rozciągać w poziomie; komponenty PÓŁNOCNY i ZACHODNI można rozciągać w pionie; komponent CENTER może rozciągać się zarówno w poziomie, jak i w pionie, aby wypełnić resztki pozostawionego miejsca.

Czy masz ustawione preferowane rozmiary?

Możesz spróbować BoxLayout jeśli chcesz wyrównać komponenty w pionie.