减少GridLayout Java Swing中的空间

时间:2012-02-16 12:10:48

标签: java swing

美好的一天,请您想知道如何缩小下图中标签和文本框之间的空间,以及如何在标签和框架之间创建一些空格。谢谢。

login page

我的代码:

private void initUI(JFrame parent) {
    // private void initUI() {
   myPanel = new JPanel(new GridLayout(3,2,1,1));
   buttons_panel = new JPanel(new FlowLayout());

   username_label = new JLabel("Username: ");
   password_label = new JLabel("Password: ");
   username = new JTextField(20);
   password = new JPasswordField(20);

   ok = new JButton("Ok");
   ok.addActionListener(new ActionListener() {

        public void actionPerformed(ActionEvent e) {

        }
    });

    cancel = new JButton("Cancel");
    cancel.addActionListener(new ActionListener() {

        public void actionPerformed(ActionEvent e) {
           dispose();
        }
    });

    myPanel.add(username_label);
    myPanel.add(username);
    myPanel.add(password_label);
    myPanel.add(password);

    buttons_panel.add(ok);
    buttons_panel.add(cancel);

    getContentPane().add(myPanel, BorderLayout.CENTER);
    getContentPane().add(buttons_panel, BorderLayout.PAGE_END);

    pack();
    setResizable(false);
    setLocationRelativeTo(parent);
}

我应该使用GridBagLayout吗?..

3 个答案:

答案 0 :(得分:5)

GridLayout中的所有单元格大小相同。您必须使用GridBagLayoutSpringLayoutBoxLayout

答案 1 :(得分:3)

或使用适当的

1)Borders

2)为

设置了对齐(left - righttop - bottom

答案 2 :(得分:2)

您还可以使用GridLayout hgaphgap参数,并添加匹配的空Border,如图here所示。