Иллюстрированный самоучитель по Java
Класс
Container
Класс container — прямой
подкласс класса component, и наследует все его методы. Кроме них основу класса
составляют методы добавления компонентов в контейнер:
-
add (Component comp)
— компонент comp добавляется в конец контейнера;
-
add (Component comp,
int index) — компонент comp добавляется впозицию index в контейнере, если
index == -i, то компонент добавляется в конец контейнера;
-
add (Component comp,
object constraints) — менеджеру размещения кон-тейнера даются указания объектом
constraints;
-
add (String name. Component
comp) —компонент получает имя name.
Два метода удаляют компоненты из
контейнера:
-
remove (Component comp)
— удаляет компонент с именем comp;
-
remove (int index)
— удаляет компонент с индексом index в контейнере.
Один из компонентов в контейнере
получает
фокус ввода
(input focus), на него надравляется ввод с клавиатуры.
Фокус можно переносить с одного компонента на другой клавишами <ТаЬ> и
<Shift>+<Tab>. Компонент может запросить фокус методом requestFocus
() и передать фокус следующему компоненту методом transferFocusO. Компонент
может проверить, имеет ли он фокус, своим логическим методом hasFocusf). Это
методы класса Component.
Для облегчения размещения компонентов
в контейнере определяется
менеджер размещения
(layout manager) — объект,
реализующий интерфейс LayoutManager или его подынтерфейс LayoutManager2. Каждый
менеджер размещает компоненты в каком-то своем порядке: один менеджер расставляет
компоненты в таблицу, другой норовит растащить компоненты по сторонам, третий
просто располагает их один за другим, как слова в тексте. Менеджер определяет
смысл слов "добавить в конец контейнера" и "добавить в позицию
index".
В контейнере в любой момент времени
может быть установлен только один менеджер размещения. В каждом контейнере есть
свой менеджер по умолчанию, установка другого менеджера производится методом
setLayout(LayoutManager
manager)
Менеджеры размещения мы рассмотрим
подробно в следующей главе. В данной главе мы будем размещать компоненты вручную,
отключив менеджер по умолчанию методом setLayout (null).