ChoiceDialog es parte del marco JavaFX. ChoiceDialog es un cuadro de diálogo que ofrece al usuario un conjunto de opciones de las que el usuario puede seleccionar como máximo una opción. La clase Choice es la clase derivada de la clase base Dialog.
Los constructores de la clase son :
- ChoiceDialog() : crea un cuadro de diálogo de elección vacío sin elementos.
- ChoiceDialog(T d, Opciones de colección) : crea un cuadro de diálogo de elección con un conjunto de elementos de la colección proporcionada y un elemento seleccionado
- ChoiceDialog(T d, T… opciones) : crea un cuadro de diálogo de opciones con un elemento seleccionado predeterminado y una array de opciones disponibles para el usuario.
Métodos comúnmente utilizados :
método | explicación |
---|---|
getItems() | devuelve todos los elementos disponibles del cuadro de elección |
obtenerElementoSeleccionado() | devuelve el elemento seleccionado del diálogo |
setSelectedItem(elemento T) | establece el elemento seleccionado del cuadro de diálogo |
setContentText(String s) | establece el texto del contenido del diálogo |
setHeaderText(String s) | establece el texto del encabezado del diálogo |
Los siguientes programas ilustran la clase ChoiceDialog:
- Programa para crear un cuadro de diálogo de elección y mostrarlo : Este programa crea un cuadro de diálogo de elección y una array de strings de días que contiene los nombres de los días de la semana. Este programa crea un Botón indicado por el nombre b. El botón se creará dentro de una escena, que a su vez se alojará dentro de un escenario. Crearíamos una etiqueta para mostrar si el botón está presionado o no. La función setTitle() se utiliza para proporcionar título al escenario. Luego se crea un panel de mosaico, en el que se llama al método addChildren() para adjuntar el botón y la etiqueta dentro de la escena. Finalmente, se llama al método show() para mostrar los resultados finales. Crearíamos un controlador de eventos para manejar los eventos del botón. El controlador de eventos se agregaría al botón mediante la función setOnAction(). Al hacer clic en el botón, aparece el cuadro de diálogo de elección con un elemento seleccionado. El usuario puede seleccionar un artículo de las opciones ofrecidas.
Java
// Java Program to create a choice dialog and display it import 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; public class choice_1 extends Application { // launch the application public void start(Stage s) { // set title for the stage s.setTitle("creating choice dialog"); // create a button Button b = new Button("click"); // create a tile pane TilePane r = new TilePane(); // items for the dialog String days[] = { "Monday", "Tuesday", "Wednesday", "Thursday", "Friday" }; // create a choice dialog ChoiceDialog d = new ChoiceDialog(days[1], days); // action event EventHandler<ActionEvent> event = new EventHandler<ActionEvent>() { public void handle(ActionEvent e) { // show the dialog d.show(); } }; // when button is pressed b.setOnAction(event); // add button r.getChildren().add(b); // create a scene Scene sc = new Scene(r, 200, 200); // set the scene s.setScene(sc); s.show(); } public static void main(String args[]) { // launch the application launch(args); } }
- Producción:
- Programa para crear un cuadro de diálogo de opciones y agregar encabezado y texto de contenido y también agregar una etiqueta para mostrar la opción seleccionada : Este programa crea un cuadro de diálogo de opciones y una serie de strings de días que contienen los nombres de los días de la semana. Este programa crea un Botón indicado por el nombre b. El botón se creará dentro de una escena, que a su vez se alojará dentro de un escenario. Crearíamos una etiqueta para mostrar si el botón está presionado o no. La función setTitle() se utiliza para proporcionar título al escenario. Luego se crea un panel de mosaico, en el que se llama al método addChildren() para adjuntar el botón y la etiqueta dentro de la escena. Finalmente, se llama al método show() para mostrar los resultados finales. Crearíamos un controlador de eventos para manejar los eventos del botón. El controlador de eventos se agregaría al botón mediante la función setOnAction(). Al hacer clic en el botón, aparece el cuadro de diálogo de elección con un elemento seleccionado. El usuario puede seleccionar un artículo de las opciones ofrecidas. también creamos una etiqueta l para mostrar el elemento seleccionado actualmente. también estableceremos el texto del encabezado y el texto del contenido usando las funciones setHeaderText() y setContentText().
Java
// Java Program to create a choice dialog and add header // and content text and also add a label to // display the selected choice import 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; public class choice_2 extends Application { // launch the application public void start(Stage s) { // set title for the stage s.setTitle("creating choice dialog"); // create a button Button b = new Button("click"); // items for the dialog String days[] = { "Monday", "Tuesday", "Wednesday", "Thursday", "Friday" }; // create a label Label l = new Label(days[1] + " selected"); // create a tile pane TilePane r = new TilePane(); // create a choice dialog ChoiceDialog d = new ChoiceDialog(days[1], days); // action event EventHandler<ActionEvent> event = new EventHandler<ActionEvent>() { public void handle(ActionEvent e) { // setheader text d.setHeaderText("day of the week"); // set content text d.setContentText("please select the day of the week"); // show the dialog d.showAndWait(); // get the selected item l.setText(d.getSelectedItem() + " selected"); } }; // when button is pressed b.setOnAction(event); // add button r.getChildren().add(b); r.getChildren().add(l); // create a scene Scene sc = new Scene(r, 200, 200); // set the scene s.setScene(sc); s.show(); } public static void main(String args[]) { // launch the application launch(args); } }
- Producción:
Publicación traducida automáticamente
Artículo escrito por andrew1234 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA