Introduksjon til JavaFX VBox

I JavaFX er VBox en komponent som legger barna noden sin på vertikal måte. Hvis det har et polstring sett eller kantlinje, vil innholdet bli vist i innsatsene. Når du legger til nye barn, blir de dessuten plassert under forrige barneknute. Hvis ingen høyde og bredde er nevnt, vil VBox vurdere standardstørrelsen som barns bredde og høyde og justere den til øverste venstre plassering. VBox-klassen utvides av ruten-klassen og kan øyeblikkelig hentes fra klassen javafx.scene.layout.VBox.

Konstruktører av JavaFX VBox

For å implementere VBox i Java, kan fire konstruktører brukes.

  • VBox (): En layout blir opprettet med 0 mellomrom.
  • VBox (dobbeltavstand): En layout blir opprettet med avstanden spesifisert.
  • VBox (Dobbelt avstand, Node barn): Det opprettes en layout med avstand og barna-noder angitt.
  • VBox (Node? Barn): Det blir opprettet en layout med avstanden 0 og barneknuter.

Egenskaper for JavaFX VBox

JavaFX VBox har tre egenskaper som,

  • innretting: Eiendom som brukes til innretting av barna som er innenfor høyden og bredden til VBox.
  • fillWidth: Noder som kan endre størrelse på endres, endres til VBox-bredden eller holdes i foretrukket bredde når du setter denne egenskapen som sann.
  • avstand: Vertikalt mellomrom mellom underordnede noder i vbox blir satt.

Topp 15 metoder for JavaFX VBox

Nedenfor er nevnt noen ofte brukte metoder i JavaFX VBox:

  1. clearConstraints (Node child): VBox-begrensninger vil bli fjernet fra underordnede noden.
  2. computeMinWidth (dobbel høyde): Minste bredde for regionen vil bli beregnet ved hjelp av denne metoden.
  3. computeMinHeight (dobbel bredde): Minstehøyde for regionen vil bli beregnet ved hjelp av denne metoden.
  4. getAlignment (): verdien for justeringsegenskapene blir returnert.
  5. isFillWidth (): verdien for fillWidth-eiendommen vil bli returnert.
  6. setAlignment (Pos-verdi): verdien for justeringsegenskapene blir satt.
  7. setSpacing (dobbel verdi): verdi for avstandsegenskapene blir satt.
  8. getMargin (Node barn): verdien for marginegenskapene blir returnert.
  9. getSpacing (): verdi for avstandseiendom vil bli returnert.
  10. getVgrow (Knutepunktbarn): verdien av vgrow eiendom blir returnert.
  11. setFillWidth (boolean value): verdien for fillWidth-egenskapen blir satt.
  12. spacingProperty (): Det vertikale mellomrommet mellom underordnede noder i vbox blir satt.
  13. setMargin (Nodechild, Insets-verdi): Margen for barnet vil bli satt i VBox.
  14. computePrefWidth (dobbel høyde): En foretrukket bredde for området som er nødvendig for den gitte høyden, vil bli beregnet.
  15. computePrefHeight (dobbel bredde): En foretrukket høyde for området som er nødvendig for den gitte bredden, vil bli beregnet.

Programmer for å implementere JavaFX VBox

La oss nå se noen eksempler på VBox med noen av metodene som er forklart i avsnittet ovenfor.

Eksempel 1

Kode:

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

Produksjon:

  • For det første opprettes 2 knapper b1 og b2 med teksten 'Prøveknapp 1 for VBox' og 'Prøveknapp 2 for VBox'.
  • Deretter oppretter du en VBox og en scene.
  • Etter å ha stilt inn scenen, vises resultatene.

Eksempel 2

Kode:

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

Produksjon:

  • Lag først en VBox og en etikett.
  • Deretter legger du til den opprettede etiketten til VBox.
  • Lag knapper ved å bruke en for loop, slik at syntaks for knappoppretting ikke trenger å skrives igjen.
  • Lag en scene og sett den.
  • Etter å ha stilt inn scenen, vises knappene i midten.

Eksempel 3

Kode:

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

Produksjon:

  • For det første lages A VBox med polstring og sett.
  • Deretter oppretter du en etikett med en tilpasset font.
  • Etter det oppretter du 4 knapper og en scene.
  • Sett til slutt scenen og vis resultatene.

Konklusjon

JavaFX VBox er en komponent som hjelper barneknuter til å lage layout på vertikal måte. Det nye barnet vil også bli lagt ved siden av det forrige barnet som ligner på en bunke. Flere detaljer om JavaFX VBox er omtalt i dette dokumentet.

Anbefalte artikler

Dette er en guide til JavaFX VBox. Her diskuterer vi introduksjonen til JavaFX VBox og dens konstruktører med de 3 beste metodene og programimplementeringen. Du kan også se på følgende artikler for å lære mer-

  1. Programmer for å implementere JavaFX Slider
  2. Forskjellen mellom Java Swing og Java FX
  3. Topp 8 diagrammer i JavaFX
  4. Struktur av JavaFX-applikasjoner
  5. Hvordan lage meny i JavaFX?