当前BoxLayout设置[按钮1、按钮2、按钮3|表示空的空间。
我如何使它出现[Button 1,Button 2,||||||按钮3]这些按钮是JButtons,boxlayout位于BorderLayout的North位置。
private JPanel makeButtonPanel(ObservableMazeGame observableMazeGame) {
JPanel buttonPanel = new JPanel();
buttonPanel.setLayout(new BoxLayout(buttonPanel, BoxLayout.X_AXIS));
ButtonPanel buttonPanelMaze = new ButtonPanel(observableMazeGame);
buttonPanel.add(buttonPanelMaze.newGameButton());
buttonPanel.add(buttonPanelMaze.helpButton());
buttonPanel.add(buttonPanelMaze.aboutButton());
return buttonPanel;
}
这是从添加的
ObservableMazeGame observableMazeGame = new ObservableMazeGame();
JFrame baseFrame = new JFrame();
baseFrame.setTitle("Maze Game");
baseFrame.setLayout(new BorderLayout());
baseFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
baseFrame.add(makeButtonPanel(observableMazeGame), BorderLayout.NORTH);
baseFrame.pack();
baseFrame.setVisible(true);
我只希望第三个按钮向右对齐,即使拉伸,它也会跟随拉伸。我试过setAlignment,但它不起作用。
在按钮2和按钮3之间使用水平胶水:
buttonPanel.add(Box.createHorizontalGlue());
有关更多详细信息,请参阅如何使用BoxLayout。