gpt4 book ai didi

java - 盒子里的组件布局很奇怪

转载 作者:行者123 更新时间:2023-11-30 04:24:16 24 4
gpt4 key购买 nike

我正在为我用 java 制作的游戏编写 gui,并且我有以下代码:

private JLabel label = new JLabel("Enter New Level Name");
private JTextField field = new JTextField();
private static JButton createWorld = new JButton("Create World");
private JButton menu = new JButton("Main Menu");

public StartGame()
{
setBackground(Color.CYAN);
Box box = Box.createVerticalBox();
box.add(label);
box.add(Box.createRigidArea(new Dimension(0,10)));
box.add(field);
box.add(Box.createRigidArea(new Dimension(0,10)));
Box hor = Box.createHorizontalBox();
hor.add(createWorld);
hor.add(Box.createRigidArea(new Dimension(10,0)));
hor.add(menu);
box.add(hor);
add(box);
}

我希望此面板的外观是一个框中的所有组件都向右对齐。然而,当我运行这个时,除了标签与布局的其余部分不匹配之外,一切正常。谁能解释一下我做错了什么,或者可能的解决方法。

这是我的问题,我知道它很模糊,但你可以看出标签向右偏移。 Heres my problem

最佳答案

您应该设置每个组件的 x 对齐方式。来自java tutorial :“一般来说,由从上到下的 BoxLayout 对象控制的所有组件都应该具有相同的 X 对齐方式。”。

所以你应该添加这一行:

label.setAlignmentX(Component.CENTER_ALIGNMENT);

关于java - 盒子里的组件布局很奇怪,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16309529/

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