JavaFX Application

 

JavaFX Application


// JavaFX Application - Factorial Calculator

// Layout management - GridPane


import javafx.application.*; 

import javafx.scene.*; 

import javafx.stage.*;

import javafx.event.*;

import javafx.scene.layout.*; 

import javafx.scene.control.*;

import javafx.scene.input.*; 

import javafx.scene.text.*;

import javafx.geometry.*;


public class JavaFX_Demo extends Application

{

public static void main(String []args)

{

launch(args);

}

public void init(){}

public void stop(){}

public void start(Stage myStage)

{

myStage.setTitle("JavaFX Application");

GridPane gp = new GridPane();

gp.setHgap(50);

gp.setVgap(50);

gp.setPadding(new Insets(50,50,50,50));

Label L1 = new Label("Enter Number : ");

L1.setFont(new Font("Times New Roman Bold",15));

Label L2 = new Label("Factorial : ");

L2.setFont(new Font("Times New Roman Bold",15));

TextField tf1 = new TextField();

tf1.setPrefColumnCount(20);

tf1.setMinHeight(25);

TextField tf2 = new TextField();

tf2.setPrefSize(20,25);

tf1.setFont(new Font("Times New Roman Bold",10));

tf2.setFont(new Font("Times New Roman Bold",10));

Button B1 = new Button("Clear");

Button B2 = new Button("Submit");

Button B3 = new Button("Exit");

B1.setFont(new Font("Times New Roman Bold Italic",15));

B2.setFont(new Font("Times New Roman Bold Italic",15));

B3.setFont(new Font("Times New Roman Bold Italic",15));

B1.setPrefWidth(75);

B2.setPrefWidth(75);

B3.setPrefWidth(75);

gp.add(L1,0,0);

gp.add(L2,0,1);

gp.add(tf1,1,0);

gp.add(tf2,1,1);

gp.add(B1,0,2);

HBox hb = new HBox(75);

hb.getChildren().addAll(B2,B3);

gp.add(hb,1,2);

B1.setOnAction(new EventHandler<ActionEvent>()

{

public void handle(ActionEvent ae)

{

tf1.setText("Enter Number.");

tf2.setText("");

tf1.setStyle("-fx-background-color: pink; -fx-text-fill: red;");

}

});

B2.setOnAction(new EventHandler<ActionEvent>()

{

public void handle(ActionEvent ae)

{

int n = Integer.parseInt(tf1.getText());

long fact=1;

for(int i=1;i<=n;i++)

fact=fact*i;

tf2.setText(Long.toString(fact));

}

});

B3.setOnAction(new EventHandler<ActionEvent>()

{

public void handle(ActionEvent ae)

{

myStage.close();

}

});

tf1.setOnMouseClicked(new EventHandler<MouseEvent>()

{

public void handle(MouseEvent me)

{

tf1.setStyle("-fx-background-color: white; -fx-text-fill: black;");

tf1.clear();

}

});

Scene myScene = new Scene(gp, 500, 300);

myStage.setScene(myScene);

myStage.show();

}

}


// Sample Output


>javac --module-path "C:\javafx-sdk-25\lib" --add-modules javafx.controls JavaFX_Demo.java

>java --module-path "C:\javafx-sdk-25\lib" --add-modules javafx.controls JavaFX_Demo








No comments:

Post a Comment

Don't be a silent reader...
Leave your comments...

Anu