Иллюстрированный самоучитель по Java
Контейнер
Panel
Контейнер Panel — это невидимый
компонент графического интерфейса, служащий для объединения нескольких других
компонентов в один объект типа Panel.
Класс Panel очень прост, но важен.
В нем всего два конструктора:
-
Panel ()
— создает контейнер с менеджером размещения по умолчанию FlowLayoutJ
-
Panel (LayoutManager
layout)
— создает контейнер
с указанным менеджером размещения компонентов layout.
После создания контейнера в него
добавляются компоненты унаследованным методом add ():
Panel p = new
Panel();
p.add(compl);
p.add(comp2);
и т. д. Размещает компоненты в контейнере
его менеджер размещения, о чем мы поговорим в следующей главе.
Контейнер Panel используется очень
часто. Он удобен для создания группы компонентов.
В листинге 10.4 три полосы прокрутки
вместе с заголовком "Подберите цвет" и масштабными метками 0, 127
и 255 образуют естественную группу. Если мы захотим переместить ее в другое
место окна, нам придется переносить каждый из семи компонентов, входящих в указанную
группу. При этом придется следить за тем, чтобы их взаимное положение не изменилось.
Вместо этого мы создали панель р и разместили на ней все семь элементов. Метод
setBounds() каждого из рассматриваемых компонентов указывает в данном случае
положение и размер компонента в системе координат панели р, а не окна Frame.
В окно мы поместили сразу целую панель, а не ее отдельные компоненты.
Теперь для перемещения всей группы
компонентов достаточно переместить панель, и находящиеся на ней объекты автоматически
переместятся вместе с ней, не изменив своего взаимного положения.