Я хочу создать простое меню со сложными уровнями
Следующие несколько строк кода — это конструктор.
super();
setMinimumSize(new Dimension(600, 300));
setMaximumSize(new Dimension(600, 300));
setPreferredSize(new Dimension(600, 300));
setLayout(new BoxLayout(this, BoxLayout.PAGE_AXIS));
addButtons();
Метод addButtons()
добавить кнопки, которые вы видите на скриншоте:
add(Box.createVerticalGlue());
addLabel("<html>Current level <b>" + Game.instance()
.getLevelString() +
"</b></html>");
add(Box.createVerticalGlue());
addButton("Easy");
add(Box.createVerticalGlue());
addButton("Normal");
add(Box.createVerticalGlue());
addButton("Hard");
add(Box.createVerticalGlue());
addButton("Back");
add(Box.createVerticalGlue());
Метод addButton()
private void addButton(String text)
{
JButton button = new JButton(text);
button.setAlignmentX(JButton.CENTER_ALIGNMENT);
button.setFocusable(false);
add(button);
}
И addLabel()
private void addLabel(String text)
{
JLabel label = new JLabel(text, JLabel.CENTER);
add(label);
}
Я не знаю, как выровнять все элементы по центру. Это проблема для меня. Дополнительная проблема заключается в том, что когда я меняю текст сложного уровня на JLabel
, он может измениться на простой «Текущий уровень EASY». Затем JButtons
перемещают много пикселей правильно, и я не знаю, почему.