Иллюстрированный самоучитель по Java

Менеджер BorderLayout

Менеджер размещения BorderLayout кажется неудобным: он располагает не больше пяти компонентов, последние растекаются по всей области, области имеют странный вид. Но дело в том, что в каждую область можно поместить не компонент, а панель, и размещать компоненты на ней, как сделано в листинге 11.3 и показано на рис. 11.3. Напомним, что на панели Panel менеджер размещения по умолчанию FlowLayout.

Листинг 11.3. Сложная компоновка.

import java.awt.*;
import java.awt.event.*;
class BorderPanelTest extends Frame{
BorderPanelTest(String s){
super(s);
// Создаем панель р2 с тремя кнопками
Panel p2 = new Panel();
p2.add(new Button("Выполнить"));
p2.add(new Button("Отменить"));
p2.add(new Button("Выйти"));
Panel pi = new Panel ();
pi.setLayout(new BorderLayout());
// Помещаем панель р2 с кнопками на "юге" панели р1
p1.add(p2, BorderLayout.SOUTH);
// Поле ввода помещаем на "севере"
p1.add(new TextFieldt"Поле ввода", 20), BorderLayout.NORTH);
// Область ввода помещается в центре
p1.add(new TextArea("Область ввода", 5, 20, TextArea.SCROLLBARS_NONE), BorderLayout.CENTER);
add(new Scrollbar(Scrollbar.HORIZONTAL), BorderLayout.SOUTH);
addfnew Scrollbar(Scrollbar.VERTICAL), BorderLayout.EAST);
// Панель p1 помещаем в "центре" контейнера add(p1, BorderLayout.CENTER);
setSize(300, 200);
setVisible(true);
}
public static void main(String[] args){
Frame f= new BorderPanelTest(" Сложная компоновка");
f.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent ev){
System.exit(0);
}
});
}
}

Иллюстрированный самоучитель по Java › Размещение компонентов › Менеджер BorderLayout
Рис. 11.3. Компоновка с помощью FiowLayout и BorderLayout

Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.