Introduzione a JavaFX VBox

In JavaFX, VBox è un componente che delinea il nodo figlio in modo verticale. Se ha un set di imbottitura o un bordo, i contenuti verranno visualizzati all'interno di tali inserti. Inoltre, aggiungendo nuovi figli, vengono posizionati sotto il nodo figlio precedente. Se non viene indicata l'altezza e la larghezza, VBox considererà la dimensione predefinita come larghezza e altezza dei bambini e la allineerà nella posizione in alto a sinistra. La classe VBox è estesa dalla classe Pane e può essere istanziata dalla classe javafx.scene.layout.VBox.

Costruttori di JavaFX VBox

Per implementare il VBox in Java, è possibile utilizzare quattro costruttori.

  • VBox (): verrà creato un layout con spaziatura 0.
  • VBox (doppia spaziatura): verrà creato un layout con la spaziatura specificata.
  • VBox (Double spacing, Node children): verrà creato un layout con la spaziatura e i nodi figlio specificati.
  • VBox (Node? Children): verrà creato un layout con la spaziatura 0 e i nodi figlio specificati.

Proprietà del VBox JavaFX

JavaFX VBox ha tre proprietà come

  • allineamento: proprietà utilizzata per l'allineamento dei figli all'interno dell'altezza e della larghezza di VBox.
  • fillWidth: i nodi figlio ridimensionabili verranno ridimensionati alla larghezza del VBox o mantenuti nella larghezza preferita impostando questa proprietà come vera.
  • spaziatura: verrà impostato lo spazio verticale tra i nodi figlio in vbox.

I 15 principali metodi di JavaFX VBox

Di seguito sono menzionati alcuni metodi comunemente usati in JavaFX VBox:

  1. clearConstraints (Node child): i vincoli VBox verranno rimossi dal nodo child.
  2. computeMinWidth (doppia altezza): la larghezza minima dell'area verrà calcolata con questo metodo.
  3. computeMinHeight (doppia larghezza): l'altezza minima della regione verrà calcolata usando questo metodo.
  4. getAlignment (): verrà restituito il valore della proprietà di allineamento.
  5. isFillWidth (): verrà restituito il valore della proprietà fillWidth.
  6. setAlignment (valore Pos): verrà impostato il valore della proprietà di allineamento.
  7. setSpacing (doppio valore): verrà impostato il valore della proprietà di spaziatura.
  8. getMargin (Node child): verrà restituito il valore della proprietà margin.
  9. getSpacing (): verrà restituito il valore della proprietà spaziatura.
  10. getVgrow (Node child): verrà restituito il valore della proprietà vgrow.
  11. setFillWidth (valore booleano): verrà impostato il valore della proprietà fillWidth.
  12. spacingProperty (): verrà impostato lo spazio verticale tra i nodi figlio in vbox.
  13. setMargin (Nodechild, valore Insets): il margine per il bambino verrà impostato nel VBox.
  14. computePrefWidth (doppia altezza): verrà calcolata una larghezza preferita per la regione necessaria per la data altezza.
  15. computePrefHeight (doppia larghezza): verrà calcolata un'altezza preferita per la regione necessaria per la larghezza data.

Programmi per implementare JavaBox VBox

Ora, vediamo alcuni esempi di VBox con alcuni dei metodi spiegati nella sezione precedente.

Esempio 1

Codice:

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

Produzione:

  • Innanzitutto, vengono creati 2 pulsanti b1 e b2 con il testo "Pulsante campione 1 per VBox" e "Pulsante campione 2 per VBox".
  • Quindi, crea un VBox e una scena.
  • Dopo aver impostato la scena, verranno visualizzati i risultati.

Esempio n. 2

Codice:

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

Produzione:

  • Innanzitutto, crea un VBox e un'etichetta.
  • Quindi, aggiungi l'etichetta creata a VBox.
  • Crea pulsanti usando un ciclo for in modo che la sintassi di creazione dei pulsanti non debba essere più scritta.
  • Crea una scena e impostala.
  • Dopo aver impostato la scena, i pulsanti verranno visualizzati al centro.

Esempio n. 3

Codice:

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

Produzione:

  • Innanzitutto, viene creato un VBox con set di imbottiture e inserti.
  • Quindi, crea un'etichetta con un carattere personalizzato.
  • Successivamente, crea 4 pulsanti e una scena.
  • Alla fine, imposta la scena e visualizza i risultati.

Conclusione

JavaFX VBox è un componente che aiuta i nodi figlio a layout in modo verticale. Inoltre, il nuovo figlio verrà aggiunto accanto al figlio precedente simile a uno stack. Maggiori dettagli su JavaFX VBox sono discussi in questo documento.

Articoli consigliati

Questa è una guida a JavaFX VBox. Qui discutiamo dell'introduzione a JavaFX VBox e ai suoi costruttori con i primi 3 metodi e l'implementazione del programma. Puoi anche consultare i seguenti articoli per saperne di più-

  1. Programmi per implementare JavaFX Slider
  2. Differenza tra Java Swing e Java FX
  3. I migliori 8 grafici in JavaFX
  4. Struttura delle applicazioni JavaFX
  5. Come creare menu in JavaFX?

Categoria: