Mi script AppleScript no funciona

1

Soy un iniciador en AppleScript y hay un problema con mi script que no puedo solucionar.

El script es:

display dialog "How long do you want the timer to go for in seconds?" default answer ""

set time to "text returned"

display dialog "Click start to start." buttons {"Start", "Cancel"}

if the answer is equal to "Start" then
    delay "time"
end if
repeat 10 times
    beep
end repeat

El mensaje de error es "error" No se puede establecer la hora en \ "texto devuelto \". "número -10006 de vez en cuando" (Estoy haciendo un temporizador)

    
pregunta JustOscarJ 30.12.2017 - 07:40

2 respuestas

1

El siguiente código AppleScript de ejemplo es solo para mostrar los cambios realizados en tu código para hacer que fluya sin los errores obvios que tiene tu código. No incluye el manejo adecuado de errores, ya que sería apropiado para manejar todos los resultados del flujo lógico. ¡Sigue aprendiendo!

display dialog "How long do you want the timer to go for in seconds?" default answer ""

set thisLong to text returned of result

display dialog "Click start to begin." buttons {"Cancel", "Start"} default button 2

if button returned of result is "Start" then
    delay thisLong
    repeat 10 times
        beep
    end repeat
end if
    
respondido por el user3439894 30.12.2017 - 08:38
1

Déjame empezar diciendo, ¡bienvenido a AppleScript! Sé que puede ser frustrante al principio pero quédate con eso, ¡valdrá la pena al final!

Entonces, aquí está el script que escribí que cumple con lo que está tratando de lograr:

set secondCount to (text returned of (display dialog "How long do you want the timer to go for in seconds?" default answer "")) as integer
set startDialog to display dialog "Click start to start." buttons {"Start", "Cancel"} default button "Start"

if button returned of startDialog is "Start" then
    delay secondCount
end if

repeat 10 times
    beep
end repeat

Una cosa que notará es que en realidad asigné una variable a las líneas "crear diálogo", esto le permitirá hacer referencia a su salida en cualquier punto dado más abajo en el script. En la primera línea, asigno la variable "secondCount" a cualquier texto que se devuelva desde ese cuadro de diálogo, formateado como un entero.

Al configurar el texto devuelto desde este cuadro de diálogo a un entero, puede envolverlo en una repetición & intente bloquear para insistir en que el usuario ingrese un número válido antes de continuar (pero estoy divagando)

Hay algunas cosas más que podría repasar con esta, pero creo que la dejaré aquí por ahora. Espero que te ayude!

    
respondido por el Howard Designs 30.12.2017 - 08:52

Lea otras preguntas en las etiquetas