GUI - получить что-то на следующей строке - PullRequest
2 голосов
/ 22 октября 2011

Я создал графический интерфейс и использую FlowLayout.

У меня есть 2 метки и кнопка, которые находятся на одной строке, однако я хочу, чтобы кнопка на отдельной строке указывала на 2этикетки.Есть ли способ это сделать?

1 Ответ

4 голосов
/ 22 октября 2011

Существует много способов, большинство из которых включают создание вложенного макета (размещение одного макета внутри другого).Вот пример.

Button/Label Layout

import java.awt.*;
import javax.swing.*;
import javax.swing.border.*;

class ButtonLabelLayout {

    public static void main(String[] args) {
        SwingUtilities.invokeLater(new Runnable() {
            public void run() {
                JPanel gui = new JPanel(new BorderLayout());
                gui.setBorder(new TitledBorder("Border Layout"));

                JPanel labels = new JPanel();
                labels.setBorder(new TitledBorder("Flow Layout"));
                labels.add(new JLabel("Label 1"));
                labels.add(new JLabel("Label 2"));

                gui.add(labels, BorderLayout.NORTH);
                gui.add(new JButton("Button"), BorderLayout.SOUTH);

                JOptionPane.showMessageDialog(null, gui);
            }
        });
    }
}

Более подробный пример макетов вложенности см. В этом ответе .

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