|
я черный цвет
g.setColor(Color.black);
// Рисуем рамку вокруг окна аплета
g.drawRect(0, 0,
dimAppWndDimension.width - 1,
dimAppWndDimension.height - 1);
}
}
Листинг 6.2 содержит исходный текст документа HTML, в который встроен аплет.
Листинг 6.2. Файл Grid\Grid.html
Grid
The source.
Описание исходного текста
В исходном тексте приложения Grid вы сможете разобраться саомстоятельно.
Заметим только, что в методе init мы вызываем метод setLayout, передавая ему
объект класса GridLayout:
setLayout(new GridLayout(3, 3));
В свою очередь, параметры конструктора объекта GridLayout определяют, что
для размещения компонент будет использована таблица, состоящая из трех строк и
трех столбцов.
Компоненты (кнопки) добавляются в окно аплета хорошо известным вам способом
- с помощью метода add:
add(btn1);
add(btn2);
add(btn3);
add(btn4);
add(btn5);
add(btn6);
add(btn7);
add(btn8);
Как видно из рис. 6.2, таблица заполняется кнопками слева направо и сверху
вниз, как это и предполагает режим компоновки GridLayout.
Режим BorderLayout
При использовании режима BorderLayout окно контейнера разделяется на рамку и
центральную часть. При размещении компонент указывается направление от центра
окна, в котором слудует размещать компоненты.
Ниже приведено краткое описание класса BorderLayout:
public class java.awt.BorderLayout
extends java.lang.Object
implements java.awt.LayoutManager
{
// -----------------------------------------------------
// Конструктор
// -----------------------------------------------------
public BorderLayout();
public BorderLayout(int hgap, int vgap);
// -----------------------------------------------------
// Методы
// -----------------------------------------------------
public void addLayoutComponent(String name,
Component comp);
public void layoutContainer(Container target);
public Dimension minimumLayoutSize(Container target);
public Dimension preferredLayoutSize(Container target);
public void removeLayoutComponent(Component comp);
public String toString();
}
Два конструктора предназначены для создания схемы размещения, соответственно,
без зазора между компонентами и с зазором заданной величины.
Добавляя компоненты к контейнеру, вы должны использовать метод add с двумя
параметрами, первый из которых указывает направление размещения, а второй -
ссылку на добавляемый объект:
add("North", btn1);
add("East", btn2);
add("West", btn3);
add("South", btn4);
add("Center", btn5);
Приложение Border
В приложении Border создается пять кнопок, которые размещаются в режиме
BorderLayout (рис. 6.3).
Рис. 6.3. Окно аплета Border
Заметьте, что в процессе размещения северная и южная кнопка (верхняя и
нижняя на нашем рисунке) заняли по ширине все окно аплета. Высота же этих
кнопок была установлена достаточной для размещения одной строки текста.
Восточная и западная кнопка (левая и правая) имеют ширину, достаточную для
размещения текста, и высоту, равную высоте области, которая осталась от
сервеной и южной кнопок.
Для центральной кнопки было выделено все оставшееся пространство в центре
окна аплета.
Исходные тексты приложения
Исходный текст приложения Border приведен в листинге 6.3.
Листинг 6.3. Файл Border\Border.java
// ================================
|
|