JavaFX | TextInputDialog

24 Oct, 2019
TextInputDialog is a part of JavaFX library. TextInputDialog is a dialog that allows the user to enter a text, and the dialog contains a header text, a TextField and confirmation buttons.
Constructor of the TextInputDialog class are:
TextInputDialog(): creates a text input dialog with no initial text.TextInputDialog(String txt): creates a text input dialog with initial text txt.
TextInputDialog(): creates a text input dialog with no initial text.
TextInputDialog(String txt): creates a text input dialog with initial text txt.
Commonly used methods:
Below programs illustrate the TextInputDialog class:
Program to create a TextInputDialog and add it to the stage: This program creates a TextInputDialog with an initial text and a header text. The header text is set using setHeaderText() function. Button is indicated by the name d and text input dialog will have name td. The button will be created inside a scene, which in turn will be hosted inside a stage. The function setTitle() is used to provide title to the stage. Then a tile pane is created, on which addChildren() method is called to attach the button inside the scene. Finally, the show() method is called to display the final results. The TextInputDialog will be shown on the click of the button.// Java Program to create a text input// dialog and add it to the stageimport javafx.application.Application;import javafx.scene.Scene;import javafx.scene.control.Button;import javafx.scene.layout.*;import javafx.event.ActionEvent;import javafx.event.EventHandler;import javafx.scene.control.*;import javafx.stage.Stage;import javafx.scene.control.Alert.AlertType;import java.time.LocalDate;public class TextInputDialog_1 extends Application {      // launch the application    public void start(Stage s)    {        // set title for the stage        s.setTitle("creating textInput dialog");          // create a tile pane        TilePane r = new TilePane();          // create a text input dialog        TextInputDialog td = new TextInputDialog("enter any text");          // setHeaderText        td.setHeaderText("enter your name");          // create a button        Button d = new Button("click");          // create a event handler        EventHandler<ActionEvent> event = new EventHandler<ActionEvent>() {            public void handle(ActionEvent e)            {                // show the text input dialog                td.show();            }        };          // set on action of event        d.setOnAction(event);          // add button and label        r.getChildren().add(d);          // create a scene        Scene sc = new Scene(r, 500, 300);          // set the scene        s.setScene(sc);          s.show();    }      public static void main(String args[])    {        // launch the application        launch(args);    }}Output:Program to create a TextInputDialog and add a label to display the text entered: This program creates a TextInputDialog (td). Button indicated by the name d and TextInputDialog will have name td. The button will be created inside a scene, which in turn will be hosted inside a stage. The function setTitle() is used to provide title to the stage. Then a tile pane is created, on which addChildren() method is called to attach the button inside the scene. Finally, the show() method is called to display the final results.when the button will be clicked the text input dialog will be shown. A label named l will be created that will be added to the scene which will show the text that the user inputs in the dialog.// Java Program to create a text input dialog// and add a label to display the text enteredimport javafx.application.Application;import javafx.scene.Scene;import javafx.scene.control.Button;import javafx.scene.layout.*;import javafx.event.ActionEvent;import javafx.event.EventHandler;import javafx.scene.control.*;import javafx.stage.Stage;import javafx.scene.control.Alert.AlertType;import java.time.LocalDate;public class TextInputDialog_2 extends Application {      // launch the application    public void start(Stage s)    {        // set title for the stage        s.setTitle("creating textInput dialog");          // create a tile pane        TilePane r = new TilePane();          // create a label to show the input in text dialog        Label l = new Label("no text input");          // create a text input dialog        TextInputDialog td = new TextInputDialog();          // create a button        Button d = new Button("click");          // create a event handler        EventHandler<ActionEvent> event = new EventHandler<ActionEvent>() {            public void handle(ActionEvent e)            {                // show the text input dialog                td.showAndWait();                  // set the text of the label                l.setText(td.getEditor().getText());            }        };          // set on action of event        d.setOnAction(event);          // add button and label        r.getChildren().add(d);        r.getChildren().add(l);          // create a scene        Scene sc = new Scene(r, 500, 300);          // set the scene        s.setScene(sc);          s.show();    }      public static void main(String args[])    {        // launch the application        launch(args);    }}Output:Note : The above programs might not run in an online IDE please use an offline IDE.Reference: https://docs.oracle.com/javase/8/javafx/api/javafx/scene/control/TextInputDialog.htmlMy Personal Notes
arrow_drop_upSave
Program to create a TextInputDialog and add it to the stage: This program creates a TextInputDialog with an initial text and a header text. The header text is set using setHeaderText() function. Button is indicated by the name d and text input dialog will have name td. The button will be created inside a scene, which in turn will be hosted inside a stage. The function setTitle() is used to provide title to the stage. Then a tile pane is created, on which addChildren() method is called to attach the button inside the scene. Finally, the show() method is called to display the final results. The TextInputDialog will be shown on the click of the button.// Java Program to create a text input// dialog and add it to the stageimport javafx.application.Application;import javafx.scene.Scene;import javafx.scene.control.Button;import javafx.scene.layout.*;import javafx.event.ActionEvent;import javafx.event.EventHandler;import javafx.scene.control.*;import javafx.stage.Stage;import javafx.scene.control.Alert.AlertType;import java.time.LocalDate;public class TextInputDialog_1 extends Application {      // launch the application    public void start(Stage s)    {        // set title for the stage        s.setTitle("creating textInput dialog");          // create a tile pane        TilePane r = new TilePane();          // create a text input dialog        TextInputDialog td = new TextInputDialog("enter any text");          // setHeaderText        td.setHeaderText("enter your name");          // create a button        Button d = new Button("click");          // create a event handler        EventHandler<ActionEvent> event = new EventHandler<ActionEvent>() {            public void handle(ActionEvent e)            {                // show the text input dialog                td.show();            }        };          // set on action of event        d.setOnAction(event);          // add button and label        r.getChildren().add(d);          // create a scene        Scene sc = new Scene(r, 500, 300);          // set the scene        s.setScene(sc);          s.show();    }      public static void main(String args[])    {        // launch the application        launch(args);    }}Output:
// Java Program to create a text input// dialog and add it to the stageimport javafx.application.Application;import javafx.scene.Scene;import javafx.scene.control.Button;import javafx.scene.layout.*;import javafx.event.ActionEvent;import javafx.event.EventHandler;import javafx.scene.control.*;import javafx.stage.Stage;import javafx.scene.control.Alert.AlertType;import java.time.LocalDate;public class TextInputDialog_1 extends Application {      // launch the application    public void start(Stage s)    {        // set title for the stage        s.setTitle("creating textInput dialog");          // create a tile pane        TilePane r = new TilePane();          // create a text input dialog        TextInputDialog td = new TextInputDialog("enter any text");          // setHeaderText        td.setHeaderText("enter your name");          // create a button        Button d = new Button("click");          // create a event handler        EventHandler<ActionEvent> event = new EventHandler<ActionEvent>() {            public void handle(ActionEvent e)            {                // show the text input dialog                td.show();            }        };          // set on action of event        d.setOnAction(event);          // add button and label        r.getChildren().add(d);          // create a scene        Scene sc = new Scene(r, 500, 300);          // set the scene        s.setScene(sc);          s.show();    }      public static void main(String args[])    {        // launch the application        launch(args);    }}
Output:
Program to create a TextInputDialog and add a label to display the text entered: This program creates a TextInputDialog (td). Button indicated by the name d and TextInputDialog will have name td. The button will be created inside a scene, which in turn will be hosted inside a stage. The function setTitle() is used to provide title to the stage. Then a tile pane is created, on which addChildren() method is called to attach the button inside the scene. Finally, the show() method is called to display the final results.when the button will be clicked the text input dialog will be shown. A label named l will be created that will be added to the scene which will show the text that the user inputs in the dialog.// Java Program to create a text input dialog// and add a label to display the text enteredimport javafx.application.Application;import javafx.scene.Scene;import javafx.scene.control.Button;import javafx.scene.layout.*;import javafx.event.ActionEvent;import javafx.event.EventHandler;import javafx.scene.control.*;import javafx.stage.Stage;import javafx.scene.control.Alert.AlertType;import java.time.LocalDate;public class TextInputDialog_2 extends Application {      // launch the application    public void start(Stage s)    {        // set title for the stage        s.setTitle("creating textInput dialog");          // create a tile pane        TilePane r = new TilePane();          // create a label to show the input in text dialog        Label l = new Label("no text input");          // create a text input dialog        TextInputDialog td = new TextInputDialog();          // create a button        Button d = new Button("click");          // create a event handler        EventHandler<ActionEvent> event = new EventHandler<ActionEvent>() {            public void handle(ActionEvent e)            {                // show the text input dialog                td.showAndWait();                  // set the text of the label                l.setText(td.getEditor().getText());            }        };          // set on action of event        d.setOnAction(event);          // add button and label        r.getChildren().add(d);        r.getChildren().add(l);          // create a scene        Scene sc = new Scene(r, 500, 300);          // set the scene        s.setScene(sc);          s.show();    }      public static void main(String args[])    {        // launch the application        launch(args);    }}Output:
// Java Program to create a text input dialog// and add a label to display the text enteredimport javafx.application.Application;import javafx.scene.Scene;import javafx.scene.control.Button;import javafx.scene.layout.*;import javafx.event.ActionEvent;import javafx.event.EventHandler;import javafx.scene.control.*;import javafx.stage.Stage;import javafx.scene.control.Alert.AlertType;import java.time.LocalDate;public class TextInputDialog_2 extends Application {      // launch the application    public void start(Stage s)    {        // set title for the stage        s.setTitle("creating textInput dialog");          // create a tile pane        TilePane r = new TilePane();          // create a label to show the input in text dialog        Label l = new Label("no text input");          // create a text input dialog        TextInputDialog td = new TextInputDialog();          // create a button        Button d = new Button("click");          // create a event handler        EventHandler<ActionEvent> event = new EventHandler<ActionEvent>() {            public void handle(ActionEvent e)            {                // show the text input dialog                td.showAndWait();                  // set the text of the label                l.setText(td.getEditor().getText());            }        };          // set on action of event        d.setOnAction(event);          // add button and label        r.getChildren().add(d);        r.getChildren().add(l);          // create a scene        Scene sc = new Scene(r, 500, 300);          // set the scene        s.setScene(sc);          s.show();    }      public static void main(String args[])    {        // launch the application        launch(args);    }}
Output:
Note : The above programs might not run in an online IDE please use an offline IDE.
Reference: https://docs.oracle.com/javase/8/javafx/api/javafx/scene/control/TextInputDialog.html
ManasChhabra2
JavaFX
Java
Java
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
Interfaces in Java
HashMap in Java with Examples
Stream In Java
Collections in Java
Singleton Class in Java
Multidimensional Arrays in Java
Set in Java
Stack Class in Java
Introduction to Java
Initialize an ArrayList in Java