import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.control.ChoiceBox;
import javafx.scene.control.DatePicker;
import javafx.scene.control.Label;
import javafx.scene.control.TextArea;
import javafx.scene.control.TextField;
import javafx.scene.layout.GridPane;
import javafx.scene.layout.VBox;
import javafx.stage.Stage;
public class Main extends Application {
Label fNameLbl = new Label("First Name:");
Label lNameLbl = new Label("Last Name:");
Label bDateLbl = new Label("Birth Date:");
Label genderLbl = new Label("Gender:");
TextField fNameFld = new TextField();
TextField lNameFld = new TextField();
DatePicker bDateFld = new DatePicker();
ChoiceBox<String> genderFld = new ChoiceBox<>();
TextArea dataFld = new TextArea();
Button saveBtn = new Button("Save");
Button closeBtn = new Button("Close");
public static void main(String[] args) {
Application.launch(args);
}
@Override
public void start(Stage stage) throws Exception {
genderFld.getItems().addAll("Male", "Fenale", "Unknwon");
dataFld.setPrefColumnCount(30);
dataFld.setPrefRowCount(5);
GridPane grid = new GridPane();
grid.setHgap(5);
grid.setVgap(5);
// Place the controls in the grid
grid.add(fNameLbl, 0, 0); // column=0, row=0
grid.add(lNameLbl, 0, 1); // column=0, row=1
grid.add(bDateLbl, 0, 2); // column=0, row=2
grid.add(genderLbl, 0, 3); // column=0, row=3
grid.add(fNameFld, 1, 0); // column=1, row=0
grid.add(lNameFld, 1, 1); // column=1, row=1
grid.add(bDateFld, 1, 2); // column=1, row=2
grid.add(genderFld, 1, 3); // column=1, row=3
grid.add(dataFld, 1, 4, 3, 2); // column=1, row=4, colspan=3, rowspan=3
VBox buttonBox = new VBox(saveBtn, closeBtn);
saveBtn.setMaxWidth(Double.MAX_VALUE);
closeBtn.setMaxWidth(Double.MAX_VALUE);
grid.add(buttonBox, 2, 0, 1, 2); // column=2, row=0, colspan=1, rowspan=2
saveBtn.setOnAction(e -> showData());
closeBtn.setOnAction(e -> stage.hide());
Scene scene = new Scene(grid);
stage.setScene(scene);
stage.setTitle("Person Details");
stage.sizeToScene();
stage.show();
}
private void showData() {
String data = "First Name = " + fNameFld.getText() +
"\nLast Name=" + lNameFld.getText() +
"\nBirth Date=" + bDateFld.getValue() +
"\nGender=" + genderFld.getValue();
dataFld.setText(data);
}
}