Введение в JavaFX HBox

JavaFX HBox - это компонент, который размещает дочерние узлы горизонтально. Для этого HBox, если присутствуют какие-либо вставки, содержание HBox будет отображаться внутри этих вставок. Класс HBox расширяется классом Pane и может создаваться из класса JavaFX.scene.layout.HBox. В отличие от VBox, добавление большего количества дочерних элементов не вставит его ниже предыдущего дочернего узла, но справа от предыдущего.

Конструкторы JavaFX HBox

Четыре конструктора могут быть использованы для реализации HBox в Java.

  1. HBox (): макет HBox будет создан с интервалом 0.
  2. HBox (Double s): будет создан макет HBox с интервалом s, указанным в качестве аргумента.
  3. HBox (двойной интервал, дочерние узлы ): будет создан макет HBox с указанными в аргументе узлами интервалов и дочерних узлов
  4. HBox (Node? Children): будет создан макет HBox с интервалом 0 и дочерними узлами, указанными, поскольку интервал не задан, здесь он принимает значение по умолчанию, равное 0.

Свойства JavaFX HBox

JavaFX HBox имеет три свойства, как показано ниже.

  • alignment: свойство, используемое для выравнивания дочерних элементов, которое находится в пределах высоты и ширины HBox.
  • fillHeight: изменяемые размеры дочерних узлов будут изменены до высоты HBox или сохранены в предпочтительной высоте при установке этого свойства как true.
  • интервал: будет установлено количество горизонтального пространства между дочерними узлами в HBox.

15 лучших методов JavaFX HBox

Ниже приведены наиболее часто используемые методы в JavaFX HBox.

  • getSpacing (): будет возвращено значение свойства Spacing.
  • getHgrow (Nodechild): будет возвращено значение свойства Hgrow.
  • setFillHeight (логическое значение): будет установлено значение свойства FillHeight.
  • clearConstraints (Nodechild): ограничения HBox будут удалены из дочернего узла.
  • isFillHeight (): будет возвращено значение свойства FillHeight.
  • setAlignment (Posvalue): будет установлено значение свойства Alignment.
  • setSpacing (double value): будет установлено значение свойства Spacing.
  • getMargin (Nodechild): будет возвращено значение свойства Margin.
  • spacingProperty (): горизонтальное пространство между дочерними узлами в HBox будет установлено.
  • setMargin (Nodechild, Insets value): маржа для дочернего элемента будет установлена ​​в HBox.
  • computeMinWidth (double height): минимальная ширина области будет вычислена с использованием этого метода.
  • computeMinHeight (double width): минимальная высота области будет вычислена с использованием этого метода.
  • getAlignment (): будет возвращено значение свойства выравнивания.
  • computePrefWidth (double height): будет вычислена предпочтительная ширина для области, которая необходима для данной высоты.
  • computePrefHeight (double width): будет вычислена предпочтительная высота для области, которая необходима для данной ширины.

Примеры JavaFX HBox

Теперь давайте рассмотрим несколько примеров HBox с некоторыми методами, описанными в предыдущем разделе.

Пример № 1

Во-первых, создаются 2 кнопки b1 и b2 с текстом «Кнопка выборки 1 для HBox» и «Кнопка выборки 2 для HBox». Затем создайте HBox и сцену. После настройки сцены будут отображены результаты.

Код:

//Java program to create a HBox
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.layout.HBox;
import javafx.stage.Stage;
//class that extends Application base class
public class JavaFXHBoxExample extends Application (
//application starts at this point
@Override
public void start(Stage s) throws Exception (
s.setTitle("HBox Example");
//create button 1
Button b1 = new Button("Sample button 1 for HBox");
Button b2 = new Button("Sample button 2 for HBox");
//create HBox
HBox hb = new HBox();
//create scene
Scene sc = new Scene(hb, 400, 200);
//add them
hb.getChildren().addAll(b1, b2);
//set the scene
s.setScene(sc);
//display the result
s.show();
)
//main method
public static void main(String() args) (
launch (args);
)
)

Выход:

Пример № 2

Во-первых, создайте HBox и ярлык. Затем добавьте созданный ярлык в HBox. Создайте кнопки с помощью цикла for, чтобы синтаксис создания кнопок больше не записывался. Создайте сцену и установите ее. После настройки сцены кнопки будут отображаться в центре.

Код:

//Java program to demonstrate JavaFX HBox with center alignment
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.*;
import javafx.scene.layout.*;
import javafx.stage.Stage;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.scene.Group;
import javafx.geometry.Pos;
//class that extends Application class
public class JavaFXHBoxExample extends Application (
// application starts at this point
public void start(Stage s)
(
try (
// set title
s.setTitle("HBox Example");
// create HBox
HBox hb = new HBox(10);
// create label
Label lb = new Label("Hey … This is the sample for JavaFX HBox !!");
// add the created label to HBox
hb.getChildren().add(lb);
// set alignment of the HBox
hb.setAlignment(Pos. CENTER );
// add buttons to HBox
for (int i = 0; i < 4; i++)
(
hb.getChildren().add(new Button("Sample Button " + (int)(i + 1)));
)
// create a scene
Scene sc = new Scene(hb, 700, 300);
// set the scene
s.setScene(sc);
s.show();
)
//catch the exception
catch (Exception e) (
System. out .println(e.getMessage());
)
)
// Main Method
public static void main(String args())
(
// launch the application
launch (args);
)
)

Выход:

Пример № 3

Во-первых, HBox создается с набором прокладок и вставок. Затем создайте ярлык с настроенным шрифтом. После этого создайте 4 кнопки и сцену. Наконец, установите сцену и отобразите результаты.

Код:

//Java program to create HBox with padding and insets
import javafx.application.Application;
import javafx.geometry.Insets;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.control.Label;
import javafx.scene.layout.HBox;
import javafx.scene.text.Font;
import javafx.scene.text.FontWeight;
import javafx.stage.Stage;
public class JavaFXHBoxExample extends Application (
//main method
public static void main(String() args) (
Application. launch (args);
)
//application starts at this point
@Override
public void start(Stage s) (
//set title
s.setTitle("HBox Sample");
// Create HBox
HBox hb = new HBox();
//set padding
hb.setPadding(new Insets(10, 50, 50, 50));
//set spacing
hb.setSpacing(10);
//create label
Label lbl = new Label("This is the HBox");
//set font properties
lbl.setFont(Font. font ("Amble CN", FontWeight. BOLD, 24));
hb.getChildren().add(lbl);
// create Buttons
Button b1 = new Button();
b1.setText(" I am Button1");
hb.getChildren().add(b1);
Button b2 = new Button();
b2.setText("I am Button2");
hb.getChildren().add(b2);
Button b3 = new Button();
b3.setText("I am Button3");
hb.getChildren().add(b3);
Button b4 = new Button();
b4.setText("I am Button4");
hb.getChildren().add(b4);
// Add HBox to the scene that is created
Scene sc = new Scene(hb);
s.setScene(sc);
s.show();
)
)

Выход:

Вывод

JavaFX HBox - это компонент, который помогает расположить дочерние узлы горизонтально. Также новый ребенок будет добавлен прямо к предыдущему ребенку.

Рекомендуемая статья

Это руководство по JavaFX HBox. Здесь мы обсуждаем конструкторы, методы, свойства JavaFX HBox вместе с реализацией кода. Вы также можете просмотреть наши предлагаемые статьи, чтобы узнать больше -

  1. 5 лучших макетов JavaFX
  2. Приложения JavaFX с функциями
  3. JavaFX против Swing | Топ 6 Сравнение
  4. JavaFX Label (Примеры)
  5. Как создать флажок в JavaFX с примерами?
  6. Примеры реализации флажка в Bootstrap
  7. Полное руководство по цвету JavaFX
  8. JavaFX VBox | 15 лучших методов JavaFX VBox