Менеджери компонування layout в swing

Особливість компонування GUI форм в Java полягає в тому, що необхідно використовувати менеджери Layout. Вони визначають розмір і розташування компонентів, а так само при зміні розміру вікна пропорційно масштабують компоненти форми, ця особливість обумовлена ​​тим, що код Java може запускатися на різних ОС з різними дозволом екрану, тому можуть виникнути проблеми при їх відображенні. Менеджери компонування Layout в Swing застосовуються для компонентів (JFrame, JPanel, JButton і ін.).

Для установки менеджера компоновки необхідно скористатися методом setLayout (), який визначений в класі Container.В даній статті розглянуті стандартні менеджери компонування AWT і Swing, якщо вам потрібна більш докладна інформація по якомусь менеджеру окремо, то я рекомендую вам звернутися до документації JAVA.

Отже, почнемо наш огляд менеджерів компонування.

BorderLayout

За замовчуванням в Swing використовується менеджер BorderLayout, в ньому визначені наступні константи для установки компонентів.

BorderLayout.NORTH (верх)
BorderLayout.SOUTH (низ)
BorderLayout.EAST (праворуч)
BorderLayout.WEST (зліва)
BorderLayout.CENTER (заповнити середину до інших компонент або до країв)

За замовчуванням приймається константа Center.
Приклад BorderLayout.

FlowLayout

FlowLayout менеджер встановлює компоненти зліва направо і при заповненні переходить на рядок вниз.

Приклад використання FlowLayout.

GridLayout

GridLayout це менеджер, який поміщає компоненти в таблицю.

GridBagLayout

Цей менеджер подібно GridLayout менеджеру встановлює компоненти в таблицю, але він більш гнучкий, так як надає можливість визначати для компонентів різну ширину і висоту колонок і рядків таблиці. По суті, GridBagLayout поміщає компоненти в осередку, і потім використовує привілейовані розміри компонентів, щоб визначити, наскільки великий осередок повинна бути.

BoxLayout дозволяє управляти розміщенням компонентів, окремо в вертикальному або горизонтальному напрямку поміщаючи їх, один за одним, і управляти простором між компонентами, використовуючи вставки.

CardLayout

Цей менеджер призначений для використання декількох менеджерів.

GroupLayout

GroupLayout менеджер має можливість незалежно встановлювати горизонтальне і вертикальне розташування компонентів на формі.

Він використовує два типи додавання компонентів паралельний і послідовний об'єднаний з ієрархічним складом.

1. Послідовним додає компоненти просто поміщаючи один за іншим, точно так само як BoxLayout або FlowLayout уздовж однієї осі. Положення кожного компонента визначається щодо попереднього компонента.

2. поміщає компонентів паралельно відносно один одного в той же самому місці. Вони додаються до верху форми або вирівнюються до основи уздовж вертикальної осі. Уздовж горизонтальній осі вони встановлюються вліво або по центру, якщо у компонентів різний розмір.

SpringLayout

SpringLayout дуже гнучкий менеджер але і дуже складний для ручного кодування спочатку проектувався для використання в середовищах автоматичного проектування GUI наприклад таких як NetBeans.Особенності його роботи полягає в установки цій справі між краями компонентів.

Якщо з якихось причин вам необхідно самостійно розташувати компоненти, то можна скористатися менеджером NullLayout встановивши в метод setLayout () значення null.

san alexanderrrr VaiMR amazurok TAnom256 krazh AlexTheLost Elmuerte vanya88 gniokr Spring_dryad rxic mole Sir_Axill SamTan emsi Fedor_Kiev D_C tarasromilovych MyBurgerIsJava buidos