Режим CardLayout
Режим CardLayout предназначен для создания набора диалоговых панелей, которые можно показывать по очереди в одном окне прямоугольной формы. Обычно для управления процессом перебора диалоговых панелей в режиме CardLayout используются отдельные органы управления, расположенные в другой панели или даже в другом аплете на той же самой странице сервера Web.
Класс CardLayout содержит два конструктора и несколько методов.
Конструкторы класса CardLayout
Режим без зазоров
public CardLayout();
Режим с зазорами по вертикали и горизонтали между компонентами и окном контейнера
public CardLayout(int hgap, int vgap);
Методы класса CardLayout
Добавление компоненты с указанием имени
public void addLayoutComponent(
String name, Component comp);
Отображение первой страницы блокнота
public void first(Container target);
Отображение последней страницы блокнота
public void last(Container target);
Отображение следующей страницы блокнота
public void next(Container target);
Отображение предыдущей страницы блокнота
public void previous(Container target);
Выполнение размещения компонент
public void layoutContainer(
Container target);
Определение минимальных размеров окна, необходимых для размещения компонент
public Dimension minimumLayoutSize(
Container target);
Определение предпочтительных размеров окна, необходимых для размещения компонент
public Dimension preferredLayoutSize(
Container target);
Удаление заданной компоненты
public void removeLayoutComponent(
Component comp);
Отображение произвольной страницы блокнота по ее имени
public void show(
Container target, String name);
Получение текстовой строки названия режима размещения
public String toString();
Использование режима размещения CardLayout
Как пользоваться режимом размещения CardLayout?
Обычно в окне аплета создается две панели, одна из которых предназначена для показа страниц блокнота в режиме размещения CardLayout, а вторая содержит органы управления перелистыванием страниц, например, кнопки.
Такие методы, как first, last, next и previous позволяют отображать, соответственно, первую, последнюю, следующую и предыдущую страницу блокнота. Если вызвать метод next при отображении последней страницы, в окне появится первая страница. Аналогично, при вызове метода previous для первой страницы блокнота вы увидите последнюю страницу.
А как отобразить произвольную страницу, не перебирая их по одной методами next и previous?
Для этого существует метод show. Учтите, что этот метод позволяет отображать только такие страницы, при добавлении которых методом add было указано имя, например:
pCardPanel.add("BackgroundColor",
pBackgroundColor);
pCardPanel.add("ForegroundColor",
pForegroundColor);
pCardPanel.add("Font", pFont);
Здесь в панель pCardPanel добавляются панели pBackgroundColor, pForegroundColor и pFont, имеющие имена, соответственно, "BackgroundColor", "ForegroundColor" и "Font".