java - 在 BoxLayout 中调整 JButton 的大小

标签 java swing jbutton boxlayout

我正在尝试为我的游戏制作一个简单的菜单。我在中间有 4 个按钮,我想让它们变大一点并将它们居中。

最后一部分有效,但我似乎无法调用我的任何 JButtons 并执行 .setSize/.setPreferedSize(new Dimension()) 就可以了。

public class mainMenu extends JFrame {
private JButton start, highscore, help, stoppen;


public mainMenu() {
    super("Master Mind");
    maakComponenten();
    maakLayout();
    toonFrame();
}

private void maakComponenten() {
    start = new JButton("Start");
    start.setBackground(Color.gray);
    highscore = new JButton("Higscores");
    help = new JButton("Help");
    stoppen = new JButton("Stoppen");
}

private void maakLayout() {
    JPanel hoofdmenu = new JPanel();
    hoofdmenu.setLayout(new BoxLayout(hoofdmenu, BoxLayout.Y_AXIS ));
    hoofdmenu.add(start);
    start.setAlignmentX(CENTER_ALIGNMENT);
    hoofdmenu.add(highscore);
    highscore.setAlignmentX(CENTER_ALIGNMENT);
    hoofdmenu.add(help);
    help.setAlignmentX(CENTER_ALIGNMENT);
    hoofdmenu.add(stoppen);
    stoppen.setAlignmentX(CENTER_ALIGNMENT);
    super.add(hoofdmenu);
}

private void toonFrame() {
    setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
    setVisible(true);
    setSize(500,500);

}

public static void main(String[] args) {
    new mainMenu();
}
}

最佳答案

例如,要更改“开始”按钮的大小,

改变:

    start1 = new JButton("Start");

    start1 = new JButton("Start") {
        {
            setSize(150, 75);
            setMaximumSize(getSize());
        }
    };

关于java - 在 BoxLayout 中调整 JButton 的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15394741/

相关文章:

java - 运行 Storm Topology 时找不到主类

java - 未使用 Spring 从 Rest Controller 调用实现方法

java - 无效的目标版本 1.8

java - 在 JComponent 和模型对象之间传输数据

java - 从容器中查找并检索组件

java - 扩展 java swing 按钮?

java - JButton 问题未显示?

java - 什么是Iterable接口(interface)中的forEach和spliterator,以及如何用链表实现

java - KeyListener Java

java - 如何在 JButton 工作期间更改 JLabel 文本?