gpt4 book ai didi

java - 使按钮不可调整大小

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:14:48 25 4
gpt4 key购买 nike

所以我试图在谷歌上搜索如何为 JButtons 设置默认大小,以便它们不会随着 JFrame 的大小调整而增长。我没有看到 setDefaultSize 方法,但我能找到的最接近的方法是 setMaximumSize()。但是,它在我的情况下似乎不起作用,我猜这是因为我使用网格布局将我的按钮定位在框架中,这是我的一小段代码:

rightPanel.add(ButtonA);
rightPanel.add(ButtonB);
rightPanel.add(ButtonC);

outerPanel.add(leftPanel);
outerPanel.add(rightPanel);
getContentPane().add(outerPanel);

这是发生的事情的图片:

enter image description here

我还希望在调整大小时将我的按钮放在右侧面板的中间(就像它们现在一样,但要小得多)。知道如何解决这个问题吗?我假设我必须使用其他布局或其他东西。

谢谢

编辑:我修改了我的代码以使用 BoxLayout 但它似乎没有将按钮放在中间。 X 对齐有效,但 Y 对齐无效:

ButtonA.setAlignmentX(CENTER_ALIGNMENT);
ButtonA.setAlignmentY(CENTER_ALIGNMENT);

ButtonB.setAlignmentX(CENTER_ALIGNMENT);
ButtonB.setAlignmentY(CENTER_ALIGNMENT);

ButtonC.setAlignmentX(CENTER_ALIGNMENT);
ButtonC.setAlignmentY(CENTER_ALIGNMENT);

JPanel rightPanel = new JPanel();
rightPanel.setLayout(new BoxLayout(rightPanel, BoxLayout.Y_AXIS));

rightPanel.add(ButtonA);
rightPanel.add(ButtonB);
rightPanel.add(ButtonC);

outerPanel.add(leftPanel);
outerPanel.add(rightPanel);
getContentPane().add(outerPanel);

enter image description here

EDIT2:用垂直胶固定。

最佳答案

GridLayout 将始终调整组件的大小以填充可用空间。

请尝试使用垂直 BoxLayout。请参阅 How to Use Box Layout 上的 Swing 教程部分获取更多信息和示例。

关于java - 使按钮不可调整大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22155760/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com