自动调整jframe的组件大小

时间:2014-04-21 18:25:57

标签: java swing jframe layout-manager null-layout-manager

我在swings上编写代码并使用null布局,这样我就可以通过使用set Bounds将j组件放在任何我喜欢的地方但是当我最大化J Frame时,我的组件将是静态的。

如何让组件自动移动。请帮助我重要的。

我必须使用null布局,只能使用任何其他布局,因为我必须将这么多组件放到特定的地方。

    public class ScreenResize extends JFrame{
    private static JButton b;
    ScreenResize(){

    JFrame.setDefaultLookAndFeelDecorated(true);

    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    int frameWidth = 200;
    int frameHeight = 100;
    Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
    setBounds((int) screenSize.getWidth() - frameWidth, 0, frameWidth, frameHeight);
    setVisible(true);
    b=new JButton();
    b.setBounds(50,50,40,20);
    add(b);

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

感谢。

1 个答案:

答案 0 :(得分:2)

除非你想重新编程其他布局如BorderLayout,GridLayout等,否则你将无法做到这一点。因此,解决方案是不使用空布局并使用嵌套在一起的其他布局的组合。

以下是what the other specific layouts can do for you开始的链接。