Bevezetés a JavaFX elrendezésbe

A felhasználói felület elrendezése a felület kialakításának központja. Számos grafikus felhasználói felület keretrendszer támogatja az elrendezéseket API-k (alkalmazásprogramozási felületek) formájában. A JavaFX-ben szintén gazdag számú elrendezés található, amelyek segítenek számos korlátozás teljesítésében annak érdekében, hogy kezeljék a következetes megjelenést és érzetet. Ebben az esetben csak a paraméterek minimális számát kell beállítani. Az elrendezések különféle lehetnek, és ezt a következő részekben részletesebben ismertetjük.

Az 5 legfontosabb JavaFX elrendezés

Mint már korábban tárgyaltuk, a JavaFX elrendezése különféle lehet, például VBox, HBox, BorderPane, FlowPane, StackPane, AnchorPane, TilePane, GridPane stb. Ebben a szakaszban öt közül fogunk foglalkozni.

1. VBox

A VBox segíti a csomópont vertikális oszlopban történő szervezését. Ebben a tartalomterület alapértelmezett magassága képes megjeleníteni a gyermekeket a kívánt magasságban, és az alapértelmezett szélesség a gyermekek szélességének legnagyobb. Annak ellenére, hogy a helyek nem állíthatók be a gyermekek számára, mivel az automatikusan kiszámításra kerül, bizonyos mértékben vezérelhető a VBox tulajdonságainak testreszabásával.

Kód:

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

Kimenet:

Itt a 3 A, B és C gomb vízszintesen van elrendezve.

2. HBox

A HBox a VBox ellentétes koncepciójával működik. Vagyis a csomópontok vízszintesen vannak elrendezve. Az alábbiakban bemutatjuk a HBox megértését segítő programot.

Kód:

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

Kimenet:

Ebben az esetben a 3 A, B és C gomb vízszintesen van elrendezve.

3. BorderPane

Ebben az elrendezési struktúrának öt régiója van, mint például TOP, BOTTOM, CENTER, LEFT és JOBB.

Kód:

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

Kimenet:

Itt 5 szövegmező jelenik meg újra az ablaktábla öt irányában.

4. FlowPane

A FlowPane lehetővé teszi a felhasználó számára a csomópontok egymás utáni elrendezését, és a csomópontok köré csomagolását a határon. Itt a csomópontok lehetnek függőleges irányban (oszlopok) vagy vízszintes irányban (sorok).

Kód:

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

Kimenet:

5. StackPane

Ebben az elrendezésben az összes csomópont egyetlen halomban helyezkedik el. Vagyis a csomópontok ugyanúgy vannak elrendezve, mint egy veremben, egy másik tetejére.

Kód:

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

Kimenet:

Következtetés

A JavaFX Layouts elősegíti a felhasználói felület egységes megjelenés és megjelenés kialakítását. Az elrendezések különféle lehetnek, és a felhasználó igényei szerint választhatók meg. Ebben a dokumentumban a JavaFX öt elrendezését tárgyaljuk részletesen.

Ajánlott cikkek

Ez egy útmutató a JavaFX elrendezésekhez. Itt a JavaFX öt legfontosabb elrendezését, például a VBox, a HBox, a BorderPane, a FlowPane és a StackPane, valamint a példákat és a kód megvalósítását ismertetjük. A következő cikkeket is megnézheti további információkért -

  1. Break kijelentés a Java-ban
  2. JList Java
  3. JPanel Java
  4. A Loop számára a Java-ban
  5. Teljes útmutató a JavaFX címkéhez
  6. Break kijelentés a JavaScript-ben
  7. HTML elrendezés
  8. Típusok és hogyan lehet létrehozni JavaFx táblázatokat?
  9. Hogyan lehet szöveget beírni a JavaFX szövegmezőbe?
  10. A JavaFx gomb kivitelezői és módszerei
  11. A HBox 15 legfontosabb módszere a JavaFX-ben
  12. Hogyan hozhatunk létre jelölőnégyzetet a JavaFX alkalmazásban példákkal?
  13. JavaFX VBox | A JavaFX VBox módszerei
  14. A JavaFX StackPane különféle módszerei

Kategória: