FXML_JavaCoreAnchor1
  • Controller controls as a late binding !
Step:1

Step: 2 Pick a suitable name

Step: 3 Create a controller class

Step: 4 Create CSS controller style sheet

Step: 5 Neew Files in Project Exploer

Step: 6 Updating codes :

package javafxtemplate1;
//Grid_VBOx_Thread
import java.io.IOException;
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.stage.Stage;
import javafx.fxml.FXMLLoader;
import javafx.scene.Group;
import javafx.scene.Parent;
import javafx.scene.layout.Pane;

public class JavaFXTemplate1 extends Application {
String path ="C:/NetBean_Examples/JavaCore/JavaFXTemplate1/JavaFXMLDoc1.fxml";
@Override
public void start(Stage primaryStage) throws IOException {
//C:\NetBean_Examples\JavaCore\JavaFXTemplate1\JavaFXMLDoc1.fxml
Parent root = FXMLLoader.load(getClass().getResource("JavaFXMLDoc1.fxml"));

//Group root = new Group();
Scene scene = new Scene(root, 450,300);
primaryStage.setScene(scene);
primaryStage.setTitle("AnchorPane::Grid");
primaryStage.show();
}
//
private Pane loadMainPane(String path) throws IOException {
FXMLLoader loader = new FXMLLoader();

Pane mainPane = (Pane) loader.load(
getClass().getResourceAsStream(path));

return mainPane;
}
private Scene createScene(Pane mainPane) {
Scene scene = new Scene(mainPane);
return scene;
}
//
public static void main(String[] args) {
Application.launch(args);
}
}

//extends Thread
----------JavaFXMLDoc1Controller.java -----

package javafxtemplate1;

import java.net.URL;
import java.util.ResourceBundle;
import javafx.event.ActionEvent;
import javafx.fxml.FXML;
import javafx.fxml.Initializable;
import javafx.scene.control.Label;


/**
* FXML Controller class
*
* @author Manas9
*/
public class JavaFXMLDoc1Controller implements Initializable {

/**
* Initializes the controller class.
*/
@FXML
private Label label1;

@FXML
private void handleButtonAction(ActionEvent event) {
System.out.println("You clicked me!");
label1.setText("Hello World!");
}

@Override
public void initialize(URL url, ResourceBundle rb) {
// TODO

}


}

-------------JavaFXMLDoc1.fxml-------------------
<?xml version="1.0" encoding="UTF-8"?>

<?import java.lang.*?>
<?import java.net.*?>
<?import java.util.*?>
<?import javafx.scene.*?>
<?import javafx.scene.control.*?>
<?import javafx.scene.layout.*?>
<?import javafx.scene.control.Label?>

<AnchorPane id="AnchorPane" prefHeight="400.0" prefWidth="600.0" styleClass="mainFxmlClass" xmlns:fx="http://javafx.com/fxml/1" fx:controller="javafxtemplate1.JavaFXMLDoc1Controller">
<stylesheets>
<URL value="@javafxmldoc1.css"/>
</stylesheets>
<children>
<Button layoutX="126" layoutY="90" text="Click Me!" onAction="#handleButtonAction" fx:id="button" />
<Label layoutX="126" layoutY="120" minHeight="16" minWidth="69" fx:id="label1" />
</children>
</AnchorPane>

------------------javafxmldoc1.css-----------------------------------
/*
* Empty Stylesheet file.
*/

.mainFxmlClass {

}
#label1
{
-fx-background-color: orange;
}
 

Step
Step
Displays: