Cómo obtener texto del usuario con AppleScript

En anteriores artículos hemos visto diversas opciones para que el usuario pueda elegir qué debe suceder al utilizar uno de nuestros scripts. Pero a veces necesitamos que el usuario nos de información que no hemos podido predecir a la hora de crear nuestro script. Esta información debe ser introducida a través de un campo de texto el cual puede ser utilizado por el usuario para aportar cualquier información que necesite nuestro script y el usuario quiera ofrecer.

Hemos visto ya el comando de AppleScript display dialog. Este comando también nos permite configurarlo para que muestre un campo de texto al usuario. Su sintaxis sería la siguiente:


display dialog "Texto de la pregunta" default answer ""

Obteniendo la respuesta

Como viene siendo habitual para poder hacer algo con la información introducida o seleccionada por el usuario debemos almacenarla en una variable. Podemos hacerlo de la siguiente forma:


set dialogResult to display dialog "?Cual es tu nombre?" default answer ""
set theName to the text returned of (dialogResult)

Primero almacenamos el resultado de la pregunta en la variable dialogResult y luego obtenemos el texto de dialogResult almacenandolo en la variable theName.

Podemos hacer estas dos operaciones en un sólo paso aunque se dificulta la lectura del código de nuestro script. El ejemplo quedaría de la siguiente forma:


set theName to the text returned of (display dialog "?Cual es tu nombre?" default answer "")

Un pequeño ejemplo

Vamos a crear un pequeño script que nos pregunte nuestro nombre y nos muestre un saludo personalizado.


set dialogResult to display dialog "?Cual es tu nombre?" default answer ""
set theName to the text returned of (dialogResult)
set sayHelloText to "Hola " & theName
display alert sayHelloText

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.