我仍然試圖找出JavaSwing中的BorderLayout,這真的令人沮喪。JavaSwing佈局混亂/ Difficullties
我想能夠將窗格拆分爲3個包含的子面板,但我不完全確定如何包含它。
這是我的類Game,其中包含面板ControlPanel,StatePanel和Board(實際上只是JPanel的擴展)。我想在面板分割成這樣那三個部分:
這是到目前爲止我的代碼:
public class Game extends JPanel {
private int panespace=2;
private JPanel ControlPanel;
private JPanel StatePanel;
private Board board;
public Game()
{
setLayout(new BorderLayout(panespace, panespace));
ControlPanel=new JPanel();
ControlPanel.setLayout(new BorderLayout(panespace, panespace));
ControlPanel.setBorder(new LineBorder(Color.red, 10));
ControlPanel.setSize(100,100);
super.add(ControlPanel, BorderLayout.EAST);
StatePanel=new JPanel();
StatePanel.setLayout(new BorderLayout(panespace, panespace));
StatePanel.setBorder(new LineBorder(Color.green, 10));
StatePanel.setSize(200, 200);
super.add(StatePanel, BorderLayout.EAST);
board = new Board();
board.setLayout(new BorderLayout(panespace, panespace));
board.setBorder(new LineBorder(Color.yellow, 10));
board.setSize(300, 300);
super.add(board, BorderLayout.NORTH);
setVisible(true);
}
}
最好,這將使用BorderLayout的,但我似乎不正確地這樣做。我嘗試閱讀Oracle提供的資料,但它們並沒有特別有用。在這一點上,我處於想要對代碼進行硬編碼的地步,但我知道我應該能夠將其分割爲讓每個面板儘可能多地佔據更大的遊戲面板。
請學習java命名約定並堅持使用它們。 – kleopatra