Eclipse bug 不遵守 GUI 设置的界限

问题描述 投票:0回答:1

所以我一直在为一个学校项目开发这个应用程序时遇到这个小问题,我相信我的 Eclipse 已经出问题了,发生的情况是,每当我在 GUI 上设置某些内容的界限时,它就不会尊重它们并且总是将我实现的任何内容放在 GUI 左侧中间附近,如果我实现更多内容,它只会将其移动到随机位置,无论我将其设置为什么范围。

我真的不知道如何解决这个问题,我尝试删除该类并重新编写代码,但它仍然发生,我在谷歌上搜索了任何修复程序,但似乎找不到任何人有这个问题问题,任何对此问题的帮助或见解将不胜感激。

问题

JFrame frame = new JFrame();

JLabel ArmaLabel = new JLabel();
JLabel BarC = new JLabel();
JLabel teste = new JLabel("teste");

ArmaP() {

    BarC.setBounds(100,100,100,30);
    BarC.setText("teste12");

    teste.setBounds(400,300,20,20);

    ArmaLabel.setBounds(325,20,200,35);
    ArmaLabel.setText("Armazenamento");
    ArmaLabel.setFont(new Font(null,Font.ROMAN_BASELINE,25));

    frame.add(ArmaLabel);
    frame.add(BarC);
    frame.add(teste);

    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.setSize(800,600);
    frame.setVisible(true);
    frame.setLayout(null);
    frame.setResizable(false);
}
}
java swing jframe layout-manager null-layout-manager
1个回答
0
投票

不确定这是否有帮助,但在 Java Swing 的扩展中,它提供了一个无需编码即可更改的窗口,首先要定义的事情之一是您想要的布局类型,有时当您创建新项目时,他的默认值会发生变化。 我想,如果是通过编码,那就是这部分:

frame.getContentPane().setLayout(null);

根据您在“null”中输入的内容,它可以使您的 setBounds 再次工作,但我不确定这是否仅来自扩展..

如果是通过扩展,则位于布局部分:

(绝对布局)让您自由选择要放置对象的位置

© www.soinside.com 2019 - 2024. All rights reserved.