Introducere în JavaFX VBox

În JavaFX, VBox este o componentă care își prezintă nodul copiilor în mod vertical. Dacă are un set de umplutură sau un chenar, conținutul va fi afișat în acele insule. Mai mult, la adăugarea de noi copii, aceștia sunt așezați sub nodul copil anterior. Dacă nu se menționează nicio înălțime și lățime, VBox va considera dimensiunea implicită ca lățime și înălțime pentru copii și o va alinia la poziția din stânga sus. Clasa VBox este extinsă de clasa Pane și poate fi inițiată din clasa javafx.scene.layout.VBox.

Constructori de JavaFX VBox

Pentru a implementa VBox în Java, patru constructori pot fi folosiți.

  • VBox (): Un layout va fi creat cu 0 spațiere.
  • VBox (spațiu dublu): va fi creat un aspect cu distanțarea specificată.
  • VBox (Spațiu dublu, Noduri copii): Un aspect va fi creat cu nodurile spațiere și copii specificate.
  • VBox (Node? Copii): Un layout va fi creat cu spațiul 0 și nodurile copii specificate.

Proprietăți ale JavaFX VBox

JavaFX VBox are trei proprietăți, cum ar fi:

  • aliniere: proprietate folosită pentru alinierea copiilor care se află în înălțimea și lățimea VBox.
  • fillWidth: Nodurile copii redimensionabile vor fi redimensionate la lățimea VBox sau păstrate în lățimea preferată la setarea acestei proprietăți ca adevărată.
  • spațiere: spațiul vertical dintre nodurile copil din vbox va fi setat.

Top 15 Metode de JavaFX VBox

Mai jos sunt menționate câteva metode utilizate frecvent în JavaFX VBox:

  1. clearConstraints (Node copil): restricțiile VBox vor fi eliminate din nodul copil.
  2. computeMinWidth (înălțime dublă): Lățimea minimă a regiunii va fi calculată folosind această metodă.
  3. computeMinHeight (lățime dublă): Înălțimea minimă a regiunii va fi calculată folosind această metodă.
  4. getAlignment (): valoarea proprietății de aliniere va fi returnată.
  5. isFillWidth (): valoarea proprietății fillWidth va fi returnată.
  6. setAlignment (Valoare poz): valoarea proprietății de aliniere va fi setată.
  7. setSpacing (valoare dublă): valoarea proprietății spațiere va fi setată.
  8. getMargin (Node copil): valoarea proprietății marginii va fi returnată.
  9. getSpacing (): valoarea proprietății spațiere va fi returnată.
  10. getVgrow (Node copil): valoarea proprietății vgrow va fi returnată.
  11. setFillWidth (valoarea booleană): valoarea proprietății fillWidth va fi setată.
  12. spacingProperty (): spațiul vertical dintre nodurile copil din vbox va fi setat.
  13. setMargin (Nodechild, valoare Insets): Marja pentru copil va fi setată în VBox.
  14. computePrefWidth (înălțime dublă): Se va calcula o lățime preferată pentru regiunea necesară pentru înălțimea dată.
  15. computePrefHeight (lățime dublă): Se va calcula o înălțime preferată pentru regiunea necesară pentru lățimea dată.

Programe pentru implementarea JavaFX VBox

Acum, să vedem câteva exemple de VBox cu unele dintre metodele explicate în secțiunea de mai sus.

Exemplul # 1

Cod:

//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);
)
)

ieşire:

  • În primul rând, sunt create 2 butoane b1 și b2 cu textul „Buton de exemplu 1 pentru VBox” și „Buton de exemplu 2 pentru VBox”.
  • Apoi, creați un VBox și o scenă.
  • După setarea scenei, rezultatele vor fi afișate.

Exemplul # 2

Cod:

//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);
)
)

ieşire:

  • În primul rând, creați un VBox și o etichetă.
  • Apoi, adăugați eticheta creată la VBox.
  • Creați butoane folosind o buclă for, astfel încât sintaxa de creare a butoanelor să nu fie scrisă din nou.
  • Creați o scenă și setați-o.
  • După setarea scenei, butoanele vor fi afișate în centru.

Exemplul # 3

Cod:

//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();
)
)

ieşire:

  • În primul rând, un VBox este creat cu seturi de umplere și seturi.
  • Apoi, creați o etichetă cu un font personalizat.
  • După aceea, creați 4 butoane și o scenă.
  • În cele din urmă, setați scena și afișați rezultatele.

Concluzie

JavaFX VBox este o componentă care ajută nodurile copil să se aranjeze într-o manieră verticală. De asemenea, noul copil va fi adăugat lângă copilul anterior similar cu o stivă. Mai multe detalii despre JavaFX VBox sunt discutate în acest document.

Articole recomandate

Acesta este un ghid pentru JavaFX VBox. Aici discutăm introducerea la JavaFX VBox și constructorii săi cu cele mai bune 3 metode și implementarea programului. De asemenea, puteți consulta următoarele articole pentru a afla mai multe-

  1. Programe pentru implementarea JavaFX Slider
  2. Diferența dintre Java Swing și Java FX
  3. Top 8 Grafice în JavaFX
  4. Structura aplicațiilor JavaFX
  5. Cum se creează meniul în JavaFX?