1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 |
import javafx.application.Application import javafx.scene.Scene import javafx.scene.control.Button import javafx.scene.control.Label import javafx.scene.control.TextField import javafx.scene.layout.VBox import javafx.stage.Stage // Definimos una clase llamada FormularioSimple que hereda de Application class FormularioSimple : Application() { // Sobreescribimos el método start, que es el punto de entrada para nuestra aplicación JavaFX override fun start(primaryStage: Stage) { primaryStage.title = "Formulario Simple" // Establecemos el título de la ventana // Creamos una etiqueta con el texto "Introduce tu nombre:" val etiqueta = Label("Introduce tu nombre:") // Creamos una caja de texto val cajaTexto = TextField() // Creamos un botón con el texto "Saludar" val boton = Button("Saludar") // Configuramos lo que debe hacer el botón cuando se hace clic (event handler) boton.setOnAction { val nombre = cajaTexto.text // Obtenemos el texto de la caja de texto if (nombre.isNotBlank()) { mostrarMensaje("¡Hola, $nombre!") // Mostramos un mensaje de saludo } else { mostrarMensaje("Por favor, ingresa tu nombre.") // Mostramos un mensaje de advertencia } } // Creamos un contenedor VBox para organizar los elementos verticalmente val root = VBox(10.0) // 10.0 es el espaciado entre elementos root.children.addAll(etiqueta, cajaTexto, boton) // Agregamos los elementos al VBox // Creamos una escena con el contenedor y establecemos su tamaño val scene = Scene(root, 300.0, 200.0) // Establecemos la escena en el primaryStage (ventana principal) primaryStage.scene = scene // Mostramos la ventana primaryStage.show() } // Función para mostrar un mensaje de diálogo private fun mostrarMensaje(mensaje: String) { val alerta = javafx.scene.control.Alert(javafx.scene.control.Alert.AlertType.INFORMATION) alerta.title = "Mensaje" alerta.headerText = null alerta.contentText = mensaje alerta.showAndWait() } // Bloque de código para iniciar la aplicación companion object { @JvmStatic fun main(args: Array<String>) { launch(FormularioSimple::class.java) // Iniciamos la aplicación } } } // Función main para iniciar la aplicación fun main() { Application.launch(FormularioSimple::class.java) } |