Читаем Графические интерфейсы пользователя Java полностью

Ссылку на компонент, помещенный в определенную область, можно получить методом getLayoutComponent, в котором указывает область.

В конструкторе менеджера можно указать горизонтальные и вертикальные промежутки между областями, задаваемые в пикселах.

Если в контейнер помещается менее пяти компонентов, то некоторые области не используются и не занимают места в контейнере.

Если не занята область CENTER, тогда компоненты прижимаются к границам контейнера.

Так как менеджер компоновки BorderLayout размещает не больше пяти компонентов, можно использовать в качестве компонентов панели, в которые дополнительно размещать компоненты.

<p>GridLayout</p>

Менеджер компоновки GridLayout размещает компоненты в таблицу с заданным в конструкторе числом строк и столбцов.

Все компоненты получают одинаковый размер.

В конструкторе также можно задать промежутки между компонентами в пикселах по горизонтали и вертикали.

Конструктор по умолчанию менеджера задает таблицу размером 0 на 0 без промежутков между компонентами. Компоненты будут располагаться в одной строке.

Компоненты размещаются менеджером GridLayout слева направо по строкам созданной таблицы в том порядке, в котором они заданы в методах add контейнера.

Нулевое количество строк или столбцов означает, что менеджер сам создаст нужное их число.

<p>CardLayout</p>

Менеджер компоновки CardLayout показывает в контейнере стек компонентов, отображая только один, первый компонент.

Остальные компоненты лежат под первым в определенном порядке.

Их расположение определяется порядком добавления в контейнер с помощью метода add.

Следующий компонент можно показать методом next менеджера, предыдущий – методом previous, последний – методом last, первый – методом first.

Аргумент этих методов – ссылка на контейнер, в который помещены компоненты.

В конструкторе менеджера можно указать горизонтальные и вертикальные отступы от границ контейнера.

Менеджер CardLayout позволяет организовать и произвольный доступ к компонентам.

Метод add тогда имеет в качестве аргумента имя компонента.

Нужный компонент с именем можно показать методом show, в котором указывается имя нужного компонента и контейнер.

Тут нужно учесть, что для фрейма мы добавляем компоненты не в сам фрейм, а в панель содержимого contentPane.

<p>GridBagLayout</p>

Менеджер компоновки GridBagLayout позволяет размещать компоненты наиболее гибко, задавая размеры и положение каждого компонента.

В классе GridBagLayout есть только один конструктор, конструктор по умолчанию, без аргументов.

Менеджер GridBagLayout, в отличие от других менеджеров компоновки, не содержит правил размещения. Он играет только организующую роль.

Все правила размещения компонентов задаются в объекте другого класса, GridBagConstraints, который указывается в методе add добавления компонента в контейнер.

Менеджер размещает компоненты в таблице с неопределенным заранее числом строк и столбцов.

Один компонент может занимать несколько ячеек этой таблицы, заполнять ячейку целиком, располагаться в ее центре, углу или прижиматься к краю ячейки.

Класс GridBagConstraints содержит одиннадцать полей, определяющих размеры компонентов, их положение в контейнере и взаимное положение, и несколько констант – значений полей.

Как правило, объект класса GridBagConstraints создается конструктором по умолчанию, затем значения нужных полей определяются простым присваиванием новых значений.

Здесь поле gridx указывает номер строки, поле gridy указывает номер столбца, поле gridwidth указывает количество занимаемых ячеек в строке, поле ipady указывает сколько добавляется к минимальной высоте компонента, поле fill используется, когда область отображения компонента больше, чем размер компонента.

<p>GroupLayout</p>

Менеджер компоновки GroupLayout работает с горизонтальной и вертикальной компоновкой отдельно.

Это означает, что каждый компонент должен быть определен дважды в горизонтальной и вертикальной компоновке.

Если вы забудете это сделать, GroupLayout выбросит исключение.

Менеджер GroupLayout использует два типа размещения компонентов: последовательное и параллельное расположение.

При последовательном размещении компоненты просто размещаются один за другим по одной оси.

Позиция каждого компонента определяется относительно предыдущего компонента.

Второй способ размещает компоненты параллельно – поверх друг друга в одном и том же месте.

Компоненты могут быть выровнены по базовой линии, по верху или низу по вертикали.

По горизонтали они могут быть выровнены влево, вправо или по центру, если компоненты не имеют одинакового размера.

Обычно компоненты, размещенные параллельно по одной оси, размещаются последовательно по другой оси, так что они не перекрываются.

Таким образом эти размещения могут быть вложенными, создавая иерархию.

Расстояние между компонентами или отступы можно рассматривать как невидимую составляющую определенного размера.

Отступы произвольного размера могут быть добавлены к группам компонентов, как отдельные компоненты, с помощью методов для групп GroupLayout.ParallelGroup и GroupLayout.SequentialGroup.

Перейти на страницу:

Похожие книги

1С: Бухгалтерия 8 с нуля
1С: Бухгалтерия 8 с нуля

Книга содержит полное описание приемов и методов работы с программой 1С:Бухгалтерия 8. Рассматривается автоматизация всех основных участков бухгалтерии: учет наличных и безналичных денежных средств, основных средств и НМА, прихода и расхода товарно-материальных ценностей, зарплаты, производства. Описано, как вводить исходные данные, заполнять справочники и каталоги, работать с первичными документами, проводить их по учету, формировать разнообразные отчеты, выводить данные на печать, настраивать программу и использовать ее сервисные функции. Каждый урок содержит подробное описание рассматриваемой темы с детальным разбором и иллюстрированием всех этапов.Для широкого круга пользователей.

Алексей Анатольевич Гладкий

Программирование, программы, базы данных / Программное обеспечение / Бухучет и аудит / Финансы и бизнес / Книги по IT / Словари и Энциклопедии
1С: Управление торговлей 8.2
1С: Управление торговлей 8.2

Современные торговые предприятия предлагают своим клиентам широчайший ассортимент товаров, который исчисляется тысячами и десятками тысяч наименований. Причем многие позиции могут реализовываться на разных условиях: предоплата, отсрочка платежи, скидка, наценка, объем партии, и т.д. Клиенты зачастую делятся на категории – VIP-клиент, обычный клиент, постоянный клиент, мелкооптовый клиент, и т.д. Товарные позиции могут комплектоваться и разукомплектовываться, многие товары подлежат обязательной сертификации и гигиеническим исследованиям, некондиционные позиции необходимо списывать, на складах периодически должна проводиться инвентаризация, каждая компания должна иметь свою маркетинговую политику и т.д., вообщем – современное торговое предприятие представляет живой организм, находящийся в постоянном движении.Очевидно, что вся эта кипучая деятельность требует автоматизации. Для решения этой задачи существуют специальные программные средства, и в этой книге мы познакомим вам с самым популярным продуктом, предназначенным для автоматизации деятельности торгового предприятия – «1С Управление торговлей», которое реализовано на новейшей технологической платформе версии 1С 8.2.

Алексей Анатольевич Гладкий

Финансы / Программирование, программы, базы данных