Bevezetés a JavaFX GridPane-be
A JavaFX GridPane egy olyan tároló, amely gyermekeit rácsba helyezi. A GridPane-ban vannak bizonyos szabályok a sejtek méretére. Vagyis sorban az összes cella azonos magasságú lesz, míg egy oszlopban az összes cella azonos szélességű lesz. A Java GridPane a javafx.scene.layout.GridPane osztályból jeleníthető meg. Az oszlopok és a sorok számát ezen az ablaktáblán az ahhoz hozzáadott összetevők határozzák meg. Most nézzük meg a GridPane szintaxisát.
A JavaFX GridPane szintaxisa
A GridPane szintaxisa az alább látható.
GridPane gp = new GridPane();
Constructors
A JavaFX GridPane kivitelezői a következők:
- GridPane () :
Létrejön egy GridPane elrendezés, amelyben a TOP_LEFT igazítás és a hgap vagy a vgap értéke 0.
A JavaFX GridPane tulajdonságai
A Java GridPane több tulajdonsággal rendelkezik. Ők :
- igazítás:
A rács igazítása az ablaktábla magasságán és szélességén belül.
- hgap:
Az oszlopok közötti vízszintes rés szélessége.
- vgap:
Függőleges résmagasság a sorok között.
- gridLinesVisible:
Ezt a tulajdonságot főleg hibakeresési célokra használják. Vagyis ellenőrzi, hogy megjelenjenek-e sorok a Gridpane sorok és oszlopok megjelenítéséhez.
A JavaFX GridPane módszerei
A Java GridPane számos módszerrel rendelkezik, amelyek különböző funkciókat hajtanak végre.
Az alábbiakban néhány, a leggyakrabban alkalmazott módszert ismertetünk.
- clearConstraints (Nodechild): A GridPane korlátozásokat eltávolítják a gyermekcsomópontról.
- computeMinWidth (dupla magasság): A régió minimális szélességét kiszámítja ezzel a módszerrel.
- computeMinHeight (dupla szélesség): A régió minimális magasságát kiszámítja ezzel a módszerrel.
- getAlignment (): az igazítási tulajdonság értéke visszatér.
- setAlignment (Posvalue): az igazítási tulajdonság értéke meg lesz állítva.
- getMargin (Nodechild): a margókorlátozások értéke visszaadásra kerül.
- computePrefWidth (dupla magasság): kiszámításra kerül a régiónak az adott magassághoz szükséges preferált szélessége.
- computePrefHeight (kettős szélesség): kiszámításra kerül a régiónak az adott szélességhez szükséges preferált magassága.
Példák a JavaFX GridPane megvalósítására
Most nézzük meg a különféle JavaFX programokat.
1. példa
Java program a rácspanel bemutatására
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.layout.GridPane;
import javafx.stage.Stage;
import javafx.scene.control.Label;
import javafx.scene.control.TextField;
public class JavaFXGridPaneExample extends Application (
//application starts at this point
@Override
public void start(Stage s) throws Exception (
//create label 1
Label lbl1=new Label("Name of the Guardian");
//create label 2
Label lbl2=new Label("Your name (IN CAPITALS ) ");
//create textfield 1
TextField t1=new TextField();
//create textfield 2
TextField t2=new TextField();
//create a button
Button b=new Button ("Click me ! !");
//create gridpane
GridPane gp=new GridPane();
//create scene
Scene sc = new Scene(gp, 500, 300);
//first row
gp.addRow(0, lbl1, t1);
//second row
gp.addRow(1, lbl2, t2);
//third row
gp.addRow(2, b);
//set scene
s.setScene(sc);
//display result
s.show();
)
//main method
public static void main(String() args) (
launch(args);
)
)
Kimenet
A kód végrehajtásakor két szövegmező 2 címkével és egy gombbal jelenik meg. Ezek a szövegmezők és gombok különböző sorokon vannak.
2. példa
Java program a rácspanel sorokkal és oszlopokkal való bemutatására
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.layout.GridPane;
import javafx.stage.Stage;
//class that extends application class
public class JavaFXGridPaneExample extends Application (
//application starts at this point
@Override
public void start(Stage s) throws Exception (
//set title
s.setTitle("GridPane Example");
//create buttons
Button b1 = new Button("This is Button A");
Button b2 = new Button("This is Button B");
Button b3 = new Button("This is Button C");
Button b4 = new Button("This is Button D");
Button b5 = new Button("This is Button E");
Button b6 = new Button("This is Button F");
//create grid pane
GridPane gp = new GridPane();
//add rows and columns to the pane
gp.add(b1, 0, 0, 1, 1);
gp.add(b4, 0, 1, 1, 1);
gp.add(b2, 2, 0, 1, 1);
gp.add(b6, 1, 1, 1, 1);
gp.add(b3, 1, 0, 1, 1);
gp.add(b5, 2, 1, 1, 1);
//create scene
Scene sc = new Scene(gp, 700, 100);
//set scene
s.setScene(sc);
//display the result
s.show();
)
//main method
public static void main(String() args) (
Application.launch(args);
)
)
Kimenet
A rácspanelt 6 gombbal hozzák létre 3 × 3 mátrix formában. A 3 × 3 mátrix forma azt jelenti, hogy 6 gombot 3 sorba és 3 oszlopba helyezünk.
3. példa
Java program a rácspanel bemutatására
import java.awt.Color;
import javafx.application.Application;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.geometry.Pos;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.layout.GridPane;
import javafx.scene.layout.HBox;
import javafx.scene.text.Text;
import javafx.stage.Stage;
import javafx.scene.control.Label;
import javafx.scene.control.TextField;
//class that extends Application class
public class JavaFXGridPaneExample extends Application (
//application starts at this point
@Override
public void start(Stage s) throws Exception (
//create label 1
Label lbl1=new Label("Name of the Guardian");
//create label 2
Label lbl2=new Label("Your name (IN CAPITALS ) ");
//create textfield 1
TextField t1=new TextField();
//create textfield 2
TextField t2=new TextField();
//create a button
Button b=new Button ("Click me ! !");
//create gridpane
GridPane gp=new GridPane();
//create hbox
HBox hb = new HBox(10);
//set alignment for hbox
hb.setAlignment(Pos.BOTTOM_RIGHT);
//add the children
hb.getChildren().add(b);
gp.add(hb, 1, 4);
//create text
final Text actn = new Text();
gp.add(actn, 1, 6);
//on clicking the button
b.setOnAction(new EventHandler() (
//event that has to be triggered
@Override
public void handle(ActionEvent ev) (
//display text when the button is clicked
actn.setText("Click me button pressed");
)
));
//create scene
Scene sc = new Scene(gp, 500, 300);
//first row
gp.addRow(0, lbl1, t1);
//second row
gp.addRow(1, lbl2, t2);
//third row
gp.addRow(2, b);
//set scene
s.setScene(sc);
//display result
s.show();
)
//main method
public static void main(String() args) (
launch(args);
)
)
Kimenet
Megjelenik egy párbeszédpanel, amelyben 2 szövegmező, 1 gomb és két címke található.
A fenti programoktól eltérően, egy eseménykezelő van jelen, amely a harmadik sorban lévő gombra kattintással kezeli a műveletet.
Látható, hogy a gombra kattintva megjelenik egy szöveg, hogy a gombot megnyomják.
Következtetés
A JavaFX alkalmazásban a GridPane rácsos formában határozza meg a gyerekeket, ahol az oszlopok és a sorok számát a benne lévő összetevők száma határozza meg. Az ablaktábla használatához azonnal töltse ki a javafx.scene.layout.GridPane osztályt. A Rácspanel további részleteit ebben a dokumentumban tárgyaljuk részletesen.
Ajánlott cikkek
Ez egy útmutató a JavaFX GridPane-hez. Itt tárgyaljuk a JavaFX GridPane megvalósításához szükséges konstruktorokat, módszereket és programokat. A következő cikkeket is megnézheti további információkért -
- JavaFX alkalmazások
- JavaFX csúszka
- JavaFX elrendezések
- JavaFX címke
- JavaFX VBox | A JavaFX VBox 15 legnépszerűbb módszere
- Példák a JavaFX menübe