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 |
import javafx.application.Application import javafx.geometry.Insets import javafx.scene.Scene import javafx.scene.control.Button import javafx.scene.control.Label import javafx.scene.control.TextField import javafx.scene.layout.GridPane import javafx.stage.Stage import java.lang.Runtime class ProcessRunner : Application() { override fun start(primaryStage: Stage) { val gridPane = GridPane().apply { padding = Insets(10.0) hgap = 10.0 vgap = 10.0 } val processLabel = Label("Nombre del proceso:") val processTextField = TextField() val runButton = Button("Ejecutar") runButton.setOnAction { val processName = processTextField.text if (processName.isNotEmpty()) { runProcess(processName) } } gridPane.add(processLabel, 0, 0) gridPane.add(processTextField, 1, 0) gridPane.add(runButton, 1, 1) primaryStage.scene = Scene(gridPane, 300.0, 100.0) primaryStage.title = "Formulario de Ejecución de Proceso" primaryStage.show() } private fun runProcess(processName: String) { try { val process = Runtime.getRuntime().exec(processName) // Puedes realizar acciones adicionales con el proceso si es necesario } catch (e: Exception) { e.printStackTrace() // Manejo de errores en caso de que la ejecución falle } } } fun main() { Application.launch(ProcessRunner::class.java) } |