Въведение в JavaFX VBox

В JavaFX, VBox е компонент, който разпределя своите възли по вертикала. Ако има набор от подплънки или рамка, съдържанието ще се показва в рамките на тези вмъквания. Освен това, при добавяне на нови деца, те се поставят под предишния детски възел. Ако не са упоменати височина и ширина, VBox ще счита размера по подразбиране като ширина и височина на децата и ще го подравнява в горната лява позиция. VBox класът се разширява от клас Pane и може да бъде инстанциран от класа javafx.scene.layout.VBox.

Конструктори на JavaFX VBox

За внедряване на VBox в Java могат да се използват четири конструктора.

  • VBox (): Ще бъде създадено оформление с интервал 0.
  • VBox (двойно разстояние): Ще бъде създадено оформление със зададено разстояние.
  • VBox (двойно разстояние, деца на възли): Ще бъде създадено оформление с посочени раздели и възли за деца.
  • VBox (Node? Children): Ще се създаде оформление с зададени интервали 0 и зададени възли за деца.

Свойства на JavaFX VBox

JavaFX VBox има три свойства като например,

  • подравняване: Свойство, което се използва за подравняване на децата, което е в рамките на височината и ширината на VBox.
  • fillWidth: Възможностите за промяна на възлите за деца ще бъдат преоразмерени до ширината на VBox или ще се запазят в предпочитаната ширина при задаване на това свойство като истина.
  • интервал: Ще бъде зададено вертикално пространство между дъщерните възли в vbox.

Топ 15 методи на JavaFX VBox

По-долу са споменати някои често използвани методи в JavaFX VBox:

  1. clearConstraints (Node child): Ограниченията на VBox ще бъдат премахнати от дъщерния възел.
  2. computeMinWidth (двойна височина): Минималната ширина на региона ще бъде изчислена с помощта на този метод.
  3. computeMinHeight (двойна ширина): Минималната височина на региона ще бъде изчислена с помощта на този метод.
  4. getAlignment (): стойността на свойството за подравняване ще бъде върната.
  5. isFillWidth (): стойността на свойството fillWidth ще бъде върната.
  6. setAlignment (Pos стойност): стойността на свойството за подравняване ще бъде зададена.
  7. setSpacing (двойна стойност): стойността на свойството за разстояние ще бъде зададена.
  8. getMargin (Node child): стойността на свойството margin ще бъде върната.
  9. getSpacing (): стойността на свойството за разстояние ще бъде върната.
  10. getVgrow (Node child): стойността на свойството vgrow ще бъде върната.
  11. setFillWidth (булева стойност): стойността на свойството fillWidth ще бъде зададена.
  12. spacingProperty (): Вертикалното пространство между дъщерните възли в vbox ще бъде зададено.
  13. setMargin (Nodechild, Insets value): Маржът за детето ще бъде зададен във VBox.
  14. computePrefWidth (двойна височина): Предпочитаната ширина за региона, която е необходима за дадената височина, ще бъде изчислена.
  15. computePrefHeight (двойна ширина): Предпочитаната височина за региона, която е необходима за дадената ширина, ще бъде изчислена.

Програми за внедряване на JavaFX VBox

Сега, нека да видим някои примери за VBox с някои от методите, обяснени в горния раздел.

Пример №1

Код:

//Java program to create a VBox
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.layout.VBox;
import javafx.stage.Stage;
//class that extends Application base class
public class JavaFXVBoxExample extends Application (
//application starts at this point
@Override
public void start(Stage s) throws Exception (
//create button 1
Button b1 = new Button("Sample button 1 for VBox");
Button b2 = new Button("Sample button 2 for VBox");
//create vbox
VBox vb = new VBox();
//create scene
Scene sc = new Scene(vb, 200, 200);
//add them
vb.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 бутона b1 и b2 се създават с текста „Примерен бутон 1 за VBox“ и „Примерен бутон 2 за VBox“.
  • След това създайте VBox и сцена.
  • След настройване на сцената ще бъдат показани резултатите.

Пример №2

Код:

//Java program to demonstrate JavaFX VBox 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 JavaFXVBoxExample extends Application (
// application starts at this point
public void start(Stage s)
(
try (
// set title
s.setTitle("VBox Example");
// create VBox
VBox vb = new VBox(10);
// create label
Label lb = new Label("Hey … This is the sample for JavaFX VBox !!");
// add the created label to vbox
vb.getChildren().add(lb);
// set alignment of the vbox
vb.setAlignment(Pos.CENTER);
// add buttons to VBox
for (int i = 0; i < 4; i++)
(
vb.getChildren().add(new Button("This is the sample button " + (int)(i + 1)));
)
// create a scene
Scene sc = new Scene(vb, 400, 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);
)
)

изход:

  • Първо, създайте VBox и етикет.
  • След това добавете създадения етикет към VBox.
  • Създайте бутони, като използвате for for цикъл, така че да не се налага повторно писане на синтаксиса за създаване на бутони.
  • Създайте сцена и я задайте.
  • След като настроите сцената, в центъра ще се покажат бутони.

Пример №3

Код:

//Java program to create VBox 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.VBox;
import javafx.scene.text.Font;
import javafx.scene.text.FontWeight;
import javafx.stage.Stage;
public class JavaFXVBoxExample 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("VBox Sample");
// Create VBox
VBox vb = new VBox();
//set padding
vb.setPadding(new Insets(10, 50, 50, 50));
//set spacing
vb.setSpacing(10);
//create label
Label lbl = new Label("This is the VBox");
//set font properties
lbl.setFont(Font.font("Amble CN", FontWeight.BOLD, 24));
vb.getChildren().add(lbl);
// create Buttons
Button b1 = new Button();
b1.setText(" I am Button1");
vb.getChildren().add(b1);
Button b2 = new Button();
b2.setText("I am Button2");
vb.getChildren().add(b2);
Button b3 = new Button();
b3.setText("I am Button3");
vb.getChildren().add(b3);
Button b4 = new Button();
b4.setText("I am Button4");
vb.getChildren().add(b4);
// Add VBox to the scene that is created
Scene sc = new Scene(vb);
s.setScene(sc);
s.show();
)
)

изход:

  • Първо, VBox е създаден с подплънки и вложки.
  • След това създайте етикет с персонализиран шрифт.
  • След това създайте 4 бутона и сцена.
  • Най-накрая задайте сцената и покажете резултатите.

заключение

JavaFX VBox е компонент, който помага на възлите на детето да подредят вертикално. Също така новото дете ще бъде добавено до предишното дете, подобно на стек. Повече подробности за JavaFX VBox се обсъждат в този документ.

Препоръчителни статии

Това е ръководство за JavaFX VBox. Тук обсъждаме въвеждането на JavaFX VBox и неговите конструктори с топ 3 метода и изпълнение на програмата. Можете също да разгледате следните статии, за да научите повече-

  1. Програми за внедряване на плъзгача JavaFX
  2. Разлика между Java Swing и Java FX
  3. Топ 8 класации в JavaFX
  4. Структура на JavaFX приложения
  5. Как да създадете меню в JavaFX?