Уменьшить пробелы в GridLayout Java Swing - PullRequest
3 голосов
/ 16 февраля 2012

Добрый день, пожалуйста, вы хотели бы знать, как уменьшить пробелы между метками и текстовыми полями на этом рисунке ниже, а также как создать несколько пробелов между метками и рамкой. Спасибо.

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 ]

5 голосов
/ 16 февраля 2012

Все ячейки в GridLayout имеют одинаковый размер. Вы должны использовать GridBagLayout или SpringLayout или BoxLayout .

3 голосов
/ 16 февраля 2012

или используйте правильное

1) Границы

2) набор для выравнивания (left - right, top - bottom) для

2 голосов
/ 16 февраля 2012

Вы также можете использовать параметры GridLayout hgap и hgap и добавить соответствующий пустой Border, как показано здесь .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...