Introducere în machete JavaFX

Aspectele interfeței utilizator sunt centrul proiectării interfeței. Multe dintre cadrele Interfață grafică pentru utilizator oferă suport pentru machete sub formă de API-uri (Interfețe de programare a aplicațiilor). De asemenea, în JavaFX, sunt furnizate un număr bogat de machete care ajută la îndeplinirea multor constrângeri pentru a aborda aspectul și aspectul consecvent. Numai numărul minim de parametri trebuie să fie stabilit în acest caz. Aspectele pot fi de diferite tipuri și sunt explicate în detaliu în secțiunile următoare.

Top 5 machete JavaFX

După cum sa discutat deja, aspectele JavaFX pot fi de diferite tipuri, precum VBox, HBox, BorderPane, FlowPane, StackPane, AnchorPane, TilePane, GridPane etc. În această secțiune, vom discuta despre cinci dintre acestea.

1. VBox

VBox ajută la organizarea nodului într-o coloană verticală. În acest sens, înălțimea implicită a zonei conținutului poate afișa copiii în înălțimea preferată, iar lățimea implicită este cea mai mare dintre lățimea copiilor. Chiar dacă locațiile nu pot fi setate pentru copii, deoarece sunt calculate automat, acesta poate fi controlat într-o măsură, prin personalizarea proprietăților VBox.

Cod:

// Java Program to create a VBox
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.*;
import javafx.scene.layout.*;
import javafx.stage.Stage;
public class JFXLayouts extends Application (
// start method helps in launching the application
public void start(Stage stage)
(
// Title set
stage.setTitle("Example for VBox");
// VBox creation
VBox vb = new VBox(10);
// Label creation
Label lb = new Label("this is VBox example");
// Add the created label to vbox
vb.getChildren().add(lb);
// add the buttons to VBox
vb.getChildren().add(new Button("Click A"));
vb.getChildren().add(new Button("Click B"));
vb.getChildren().add(new Button("Click C"));
// Scene creation
Scene scene = new Scene(vb, 300, 300);
// Scene setting
stage.setScene(scene);
stage.show();
)
// Main Method
public static void main(String args())
(
//method to launch the JavaFX application
launch(args);
)
)

ieşire:

Aici, 3 butoane A, B și C sunt aranjate într-o manieră orizontală.

2. HBox

HBox funcționează în conceptul opus VBox. Adică nodurile vor fi organizate pe orizontală. Urmează un program care ajută la înțelegerea HBox.

Cod:

// Java Program to create an HBox
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.*;
import javafx.scene.layout.*;
import javafx.stage.Stage;
public class JFXLayouts extends Application (
// start method helps in launching the application
public void start(Stage stage)
(
// Title set
stage.setTitle("Example for HBox");
// HBox creation
HBox hb = new HBox(10);
// Label creation
Label lb = new Label("this is HBox example");
// Add the created label to Hbox
hb.getChildren().add(lb);
// add the buttons to Hbox
hb.getChildren().add(new Button("Click A"));
hb.getChildren().add(new Button("Click B"));
hb.getChildren().add(new Button("Click C"));// Scene creation
Scene scene = new Scene(hb, 300, 300);
// Scene setting
stage.setScene(scene);
stage.show();
)
// Main Method
public static void main(String args())
(
//method to launch the JavaFX application
launch(args);
)
)

ieşire:

În acest caz, 3 butoane A, B și C sunt aranjate într-o manieră orizontală.

3. BorderPane

În acest sens, structura de dispunere are cinci regiuni, cum ar fi TOP, BOTTOM, CENTER, LEFT și DREPT.

Cod:

// Java Program to create an BorderPane
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.*;
import javafx.scene.layout.*;
import javafx.stage.Stage;
public class JFXLayouts extends Application (
// start method helps in launching the application
public void start(Stage stage)
(
BorderPane bp = new BorderPane();
bp.setTop(new TextField("A-Top"));
bp.setBottom(new TextField("B-Bottom"));
bp.setLeft(new TextField("C-Left"));
bp.setRight(new TextField("D-Right"));
bp.setCenter(new TextField("E-Center"));// Scene creation
Scene scene = new Scene(bp);// Title set
stage.setTitle("Example for BorderPane");
// Scene setting
stage.setScene(scene);
stage.show();
)
// Main Method
public static void main(String args())
(
//method to launch the JavaFX application
launch(args);
)
)

ieşire:

Aici, 5 câmpuri de text sunt resentite în cele cinci direcții ale panoului.

4. FluxPane

FlowPane permite utilizatorului să aranjeze nodurile într-o manieră consecutivă și înfășoară nodurile la graniță. Aici, nodurile pot fi pe direcție verticală (coloane) sau direcție orizontală (rânduri).

Cod:

// Java Program to create a flowpane
import javafx.application.Application;
import javafx.collections.ObservableList;
import javafx.geometry.Insets;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.layout.FlowPane;
import javafx.scene.shape.Sphere;
import javafx.stage.Stage;
public class JFXLayouts extends Application (
// start method helps in launching the application
public void start(Stage stage)
(
//create buttons
Button b1 = new Button("Button A");
Button b2 = new Button("Button B");
Button b3 = new Button("Button C");
Button b4 = new Button("Button D");
//Flow Pane creation
FlowPane fp = new FlowPane();
//Set horizontal gap
fp.setHgap(25);
//Set margin
fp.setMargin(b1, new Insets(20, 0, 20, 20));
ObservableList list = fp.getChildren();
//Add nodes to the flow pane
list.addAll(b1, b2, b3, b4);
// Scene creation
Scene scene = new Scene(fp);
// Title set
stage.setTitle("Example for BorderPane");
// Scene setting
stage.setScene(scene);
stage.show();
)
// Main Method
public static void main(String args())
(
//method to launch the JavaFX application
launch(args);
)
)

ieşire:

5. StackPane

În acest aspect, toate nodurile sunt plasate într-o singură stivă. Adică nodurile sunt aranjate la fel ca într-o stivă, una peste alta.

Cod:

// Java Program to create a flowpane
import javafx.application.Application;
import javafx.scene.shape.Sphere;
import javafx.collections.ObservableList;
import javafx.scene.text.Font;
import javafx.geometry.Insets;
import javafx.scene.text.FontWeight;
import javafx.scene.Scene;
import javafx.scene.layout.StackPane;
import javafx.scene.shape.Circle;
import javafx.scene.text.Text;
import javafx.stage.Stage;
import javafx.scene.paint.Color;
public class JFXLayouts extends Application (
@Override
public void start(Stage stage) (
//draw a sphere
Sphere sph = new Sphere(50);
//text creation
Text t = new Text("DEMO");
//Set font of the text
t.setFont(Font.font(null, FontWeight.BOLD, 13));
//Set color of the text
t.setFill(Color.RED);
//set position of the text
t.setX(20);
t.setY(50);
//Create a Stackpane
StackPane sp = new StackPane();
ObservableList list = sp.getChildren();
//Add nodes to the pane
list.addAll( sph, t);
// Scene creation
Scene scene = new Scene(sp);
// Title set
stage.setTitle("Example for BorderPane");
// Scene setting
stage.setScene(scene);
stage.show();
)
// Main Method
public static void main(String args())
(
//method to launch the JavaFX application
launch(args);
)
)

ieşire:

Concluzie

Layouts JavaFX ajută la crearea designului interfeței într-un look și Feel consecvent. Aspectele pot fi de diferite tipuri și pot fi alese în funcție de cerințele utilizatorului. În acest document, cinci dintre aspectele JavaFX sunt discutate în detaliu.

Articole recomandate

Acesta este un ghid pentru machete JavaFX. Aici discutăm primele 5 machete ale JavaFX, cum ar fi VBox, HBox, BorderPane, FlowPane și StackPane, împreună cu exemple și implementarea codului. De asemenea, puteți consulta următoarele articole pentru a afla mai multe -

  1. Declarație de pauză în Java
  2. JList în Java
  3. JPanel în Java
  4. Pentru bucla în Java
  5. Ghid complet pentru Eticheta JavaFX
  6. Declarație de pauză în JavaScript
  7. Aspect HTML
  8. Tipuri și cum să creați diagrame JavaFx?
  9. Cum să introduceți text în JavaFX TextField?
  10. Constructori și metode de buton JavaFx
  11. Top 15 Metode de HBox în JavaFX
  12. Cum se creează caseta de selectare în JavaFX cu exemple?
  13. JavaFX VBox | Metode de JavaFX VBox
  14. Diferite metode de JavaFX StackPane