De
GridPaneklass skapar en JavaFX-layoutfönster som placerar kontroller baserat på en kolumn- och radposition. Rutnätet i denna layout är inte fördefinierat. Det skapar kolumner och rader när varje kontroll läggs till. Detta gör att nätet är helt flexibelt i sin design.
Noder kan placeras i varje cell i nätet och kan sträcka sig över flera celler antingen vertikalt eller horisontellt. Som standard kommer raderna och kolumnerna att dimensioneras för att passa deras innehåll - det är den bredaste barnnoden som definierar kolumnbredden och den högsta barnnoden radhöjden.
importera javafx.scene.layout.GridPane;
De
GridPaneklass har en konstruktör som inte accepterar några argument:
GridPane playerGrid = new GridPane ();
Barnnoder läggs till i
GridPanemed hjälp av tilläggsmetoden som anger den nod som ska läggas till med kolumn- och radindex:
// Placera textkontrollen i kolumn 1, rad 8
Text rank4 = new Text ("4");
playerGrid.add (rank4, 0,7);
Notera: Kolumn- och radindex börjar på 0. Så den första cellen placerad vid kolumn 1, rad 1 har ett index på 0, 0.
Underordnade noder kan också sträcka sig över flera kolumner eller rader. Detta kan anges i
Lägg tillmetod genom att lägga till antalet kolumner och rader som ska spännas till slutet av de skickade argumenten:
// Här spänner textkontrollen fyra kolumner och 1 rad
Text title = new Text ("Toppskårare i engelska Premier League");
playerGrid.add (titel, 0,0,4,1);
Barnnoder som finns i
GridPanekan ha sin inriktning längs den horisontella eller vertikala axeln med hjälp av
setHalignmentoch
setValignmentmetoder:
GridPane.setHalignment (goal4, HPos.CENTER);
Notera: De
VPOSenum innehåller fyra konstanta värden för att definiera den vertikala positionen:
GRUNDLINJE,
BOTTEN,
CENTRUMoch
TOPP. De
horisontell positionenum innehåller bara tre värden för den horisontella positionen:
CENTRUM,
VÄNSTERoch
RÄTT.
Polstring av barnnoder kan också ställas in med hjälp av
setPaddingmetod. Denna metod tar barnnoden att ställas in och
inläggningarobjekt som definierar stoppningen:
// Ställ in stoppningen för alla celler i GridPane
playerGrid.setPadding (nya Insets (0, 10, 0, 10));