Вступ до SpringLayout на Java

У цій статті ми дізнаємось про одного з найбільш гнучких менеджерів компонування Java, який успадковує різні функції і від інших менеджерів компонування. У AWT (Abstract Window Toolkit) клас SpringLayout відповідає за розкладку дітей у пов'язаний контейнер на основі набору обмежень щодо компонування.

Перш ніж зрозуміти SpringLayout, давайте подивимось на Spring Framework.

Просто Spring Framework - це єдине рішення для різних перешкод. Для розробки Enterprise Applications Spring Framework використовує численні методи, такі як введення залежності (DI), аспект-орієнтоване програмування (AOP) та звичайний старий об'єкт Java (POJO). Spring - це легкий фреймворк з відкритим кодом, який дозволяє розробникам Java створювати надійні, масштабовані та прості програм для підприємств. Випущена у 2004 році, Spring зазнала великих та значних змін та змін упродовж періоду та відповідно до потреби.

Тепер, SpringLayout, як описано раніше, є дуже гнучким диспетчером макетів, який успадковує функції різних інших менеджерів макетів, доданих у версії 1.4 JDK. Для розширення менеджер компонування - це об'єкт java, який реалізує інтерфейс LayoutManager і відповідає за визначення позиції та розміру. Весняний макет просто визначає взаємозв'язок між краями компонентів і на відміну від інших менеджерів компонування, SpringLayout не встановлює автоматично розташування жодного з його компонентів. При цьому, SpringLayout точно підтримує контракт LayoutManager2. SpringLayout також пропонує декілька рішень для вирішення проблем, які неможливо вирішити втручанням Коробки.

Конструктор SpringLayout на Java

Простіше кажучи, Java Constructor - це блок програмного коду, який ініціалізує об'єкт і має те саме ім’я, що і клас. У Java є різні типи конструкторів. Ми можемо перевантажувати конструктор з метою створення об’єктів різними способами, а для Компілятора Конструктор розрізняється за кількістю, типами та порядком переданих параметрів.

public SpringLayout () - це простий конструктор Java, який в основному будує новий SpringLayout.

Кожен окремий клас мови програмування Java має конструктор, якщо він не створений, java неявно викликає конструктор за замовчуванням зі значеннями, встановленими на нуль.

Методи SpringLayout на Java

В основному, метод java - це сукупність програмних висловлювань, подібних до вищезгаданого конструктора, з вказаним ім'ям, яке може викликатися / викликатися в коді і в будь-який час у коді. Метод можна розглядати як підпрограму. На відміну від конструктора, метод повертає значення.

Тепер, щоб рухатись далі, клас SpringLayout пропонує широкий спектр методів, нижче наведено кілька методів з деталями.

1. void addLayoutComponent (Component com, Object constraints): Тут у нас є тип недійсного модифікатора та метод з назвою addLayoutComponent, який бере два аргументи, як рядок і компонент.

2. void layoutContainer (батьківський контейнер): той самий модифікатор, що і вище, з іменем layoutContainer і тут батьківський контейнер, який потрібно викласти.

3. Dimension preferenceLayoutSize (батьківський контейнер): У нас є клас Dimension, який підсумовує висоту та ширину компонента в одному об’єкті. І батьківський є контейнером, який потрібно викласти.

4. Dimension minimalLayoutSize (батьківський контейнер): З тим самим класом Dimension, minimalLayoutSize просто обчислює розміри мінімального розміру для контейнера, батьківський - контейнер, який потрібно викласти. SpringLayout також надає максимальний розмір, з класом Dimension, який повертає максимальний розмір розміру.

5. void removeLayoutComponent (компонент компонента): той самий модифікатор, як згадувалося раніше, з ім'ям компонента, переданим як параметр. Тут RemoveLayoutComponent просто видаляє компонент, згаданий у параметрі, з макета.

6. Spring getConstraint (String edgeName, компонент компонента): getConstraint приймає два параметри, один - ім'я краю, яке повинно бути одним з SpringLayout.EAST, SpringLayout.WEST, SpringLayout.NORTH, SpringLayout.SOUTH, SpringLayout.VERTICAL_CENTER, SpringLayout.HORIZONTAL SpringLayout.BASELINE та назва компонента, край якого весни ми бажаємо.

7. void putConstraint (Str e1, Comp c1, int pad, Str e2, Comp c2): Цей метод приймає загально п’ять параметрів. Дві струни, дві складові та пружина. putConstraint просто з'єднує ребро e1 компонента c1 з краєм e2 компонента c2 разом із заданою відстані між ребрами.

Крім вищезгаданих методів, SpringLayout пропонує широкий спектр методів для різних операцій, getLayoutAlignmentX і getLayoutAlignmentY повертає 0, 5f і є плаваючим типом.

Проста програма Java, що демонструє SpringLayout на Java

Тепер, коли ми зрозуміли весь pf SpringLayout разом із його класом та методами, давайте напишемо просту програму, щоб продемонструвати зразок макета. У нас буде одна основна мітка, текстове поле та заголовок.

Нижче наводиться зразок програми для демонстрації роботи класу SpringLayout.

Код:

import java.awt.Component;
import java.awt.Container;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JTextField;
import javax.swing.SpringLayout;
public class SpringSample (
public static void main(String args()) (
JFrame Sampleframe = new JFrame("Sample SL");
Sampleframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Container sampleCP = Sampleframe.getContentPane();
SpringLayout SampleSL = new SpringLayout();
sampleCP.setLayout(SampleSL);
Component left = new JLabel("Sample Label");
Component right = new JTextField(15);
sampleCP.add(left);
sampleCP.add(right);
SampleSL.putConstraint(SpringLayout.NORTH, right, 27, SpringLayout.NORTH, sampleCP);
SampleSL.putConstraint(SpringLayout.NORTH, left, 27, SpringLayout.NORTH, sampleCP);
SampleSL.putConstraint(SpringLayout.WEST, left, 12, SpringLayout.WEST, sampleCP);
SampleSL.putConstraint(SpringLayout.WEST, right, 22, SpringLayout.EAST, left);
Sampleframe.setSize(450, 110);
Sampleframe.setVisible(true);
)
)

Збережіть наведений вище код у файлі з розширенням .java. Складіть код java з файлом javac filename.java і виконайте файл класу як клас java. Після виконання коду ви отримаєте простий вихід із заданим макетом, єдиною міткою та текстовим полем. Для подальшого розуміння див. Знімок екрана

Вихід:

Інтерпретація коду: ми ініціалізували імпорт необхідних пакетів. Ми дзвонили JLabel, JTextField та SpringLayout від javax.swing та два пакети з Java Abstract Window Toolkit. Ми визначили клас та основний метод всередині. Тоді ми визначили рамку з "SpringLayout Sample" як заголовок. Потім ми додали мітку, як у JLabel ("Lable1"), де Label1 - назва заголовка, а текстове поле як JTextField (15) з 15 як договір на визначення розміру текстового поля. Пізніше ми визначили SpringLayout на основі всіх напрямків, а також ліворуч і праворуч із contentPane. Нарешті, ми встановлюємо розмір кадру за допомогою setSize (300, 100) та видимості в true. А тепер у нас є простий SpringLayout з єдиною міткою та текстовим полем.

Висновок

SpringLayout - клас java, який визначає дітей відповідного контейнера відповідно до набору обмежень. Об'єкт, що представляє ці обмеження, має мінімальне, максимальне, бажане та поточне значення. Ми зрозуміли клас SpringLayout, його конструктор та методи та переваги SpringLayout перед іншими менеджерами макетів.

Рекомендовані статті

Це посібник із SpringLayout на Java. Тут ми обговорюємо конструктор та методи SpringLayout в java разом з його інтерпретацією коду. Ви також можете переглянути наступні статті, щоб дізнатися більше -

  1. BorderLayout на Java
  2. Картонна карта у Java
  3. Gridlayout на Java
  4. BoxLayout на Java
  5. JFrame на Java
  6. JLabel на Java
  7. Макет HTML
  8. Масиви в програмуванні Java