Введение в SpringLayout в Java

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

Прежде чем понять SpringLayout, давайте посмотрим на Spring Framework.

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

Теперь SpringLayout, как описано ранее, является очень гибким менеджером макетов, который наследует функции различных других менеджеров компоновки, он был добавлен в JDK версии 1.4. Для расширения менеджер компоновки - это Java-объект, который реализует интерфейс LayoutManager и отвечает за определение позиции и размера. Spring Layout просто определяет отношения между краями компонентов, и в отличие от других менеджеров компоновки, SpringLayout не устанавливает автоматически ни одно из его компонентов. При этом SpringLayout точно поддерживает контракт LayoutManager2. SpringLayout также предоставляет несколько решений для решения проблем, которые не могут быть решены вмешательством Boxes.

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

Проще говоря, Java Constructor - это блок программного кода, который инициализирует объект и имеет то же имя, что и класс. Существуют различные типы конструкторов в Java. Мы можем перегружать конструктор с целью создания объектов различными способами, а для компилятора конструктор различается по количеству, типам и порядку передаваемых параметров.

public SpringLayout () - это простой Java-конструктор, который в основном создает новый SpringLayout.

У каждого отдельного класса в языке программирования Java есть конструктор, если он не создан, java неявно вызывает конструктор по умолчанию со значениями, установленными в ноль.

Методы SpringLayout в Java

По сути, java-метод - это набор программных операторов, аналогичных вышеупомянутому конструктору, с указанным именем, который можно вызывать / вызывать в любом месте и в любое время в коде. Метод можно рассматривать как подпрограмму. В отличие от конструктора, метод возвращает значение.

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

1. void addLayoutComponent (Компонент com, ограничения объекта): здесь у нас есть модификатор типа void и метод с именем addLayoutComponent, который принимает два аргумента, как строку, так и компонент.

2. void layoutContainer (родительский контейнер): тот же модификатор, что и выше, с именем layoutContainer, а здесь родительский - контейнер, который должен быть размечен.

3. Dimension extendedLayoutSize (родительский контейнер): здесь у нас есть класс Dimension, который суммирует высоту и ширину компонента в одном объекте. И родитель - это контейнер, который нужно разложить.

4. DimensionimumLayoutSize (родительский контейнер): с тем же классом Dimension, imumLayoutSize просто вычисляет размеры минимального размера для контейнера, родительский объект - контейнер, который должен быть размечен. SpringLayout также предоставляет MaximumLayoutSize с классом Dimension, который возвращает максимальный размер измерения.

5. void removeLayoutComponent (Component component): тот же модификатор, что и упомянутый ранее, с именем компонента, переданным в качестве параметра. Здесь removeLayoutComponent просто удаляет компонент, упомянутый в параметре, из макета.

6. Spring getConstraint (String edgeName, компонент Component): getConstraint принимает два параметра, один из которых является edgename, который должен быть одним из SpringLayout.EAST, SpringLayout.WEST, SpringLayout.NORTH, SpringLayout.SOUTH, SpringLayout.VERTICAL_CENTER, SpringLayout.HORIZTERTC. 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 и имеют тип float.

Простая Java-программа, демонстрирующая SpringLayout на Java

Теперь, когда мы поняли весь pF SpringLayout вместе с его классом и методами, давайте напишем простую программу для демонстрации примера Layout. У нас будет одна базовая метка, текстовое поле и заголовок.

Ниже приведен пример программы, демонстрирующей работу класса 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. CardLayout в Java
  3. Gridlayout в Java
  4. BoxLayout в Java
  5. JFrame в Java
  6. JLabel на Java
  7. HTML-макет
  8. Массивы в программировании на Java