0

我是一名正在学习 AppleScript 的学生,我在循环某个特定命令时遇到了困难,有人可以帮帮我吗?代码如下,我的目标是仅在用户输入无效值时循环。

我感谢任何帮助:)

非常感谢安德鲁

    display dialog "Choose a number from 1-10" default answer "Only number less than 11" buttons {"Ok"} default button 1

try

    set theAnswer to (text returned of result) as number

on error

    display dialog "You didnt put in any numbers" buttons {"Ok"} default button 1
    return

end try
if theAnswer < 1 then
    set theTest to 0
else if theAnswer < 11 then
    set theTest to 1

else
    set theTest to 0
end if
if theTest = 0 then
    display dialog "Invalid Input" buttons {"Ok"} default button 1

else
    display dialog "You chose the number " & theAnswer buttons {"Ok"} default button 1
end if
4

1 回答 1

1

尝试:

repeat
    set theAnswer to text returned of (display dialog "Choose a number from 1-10" default answer "Only number less than 11" buttons {"Ok"} default button 1)
    try
        set theAnswer to theAnswer as number

        if theAnswer ≤ 10 and theAnswer ≥ 1 then
            display dialog "You chose the number " & theAnswer buttons {"Ok"} default button 1
            exit repeat
        else
            display dialog "Invalid Input" buttons {"Ok"} default button 1
        end if

    on error
        display dialog "You didnt put in any numbers" buttons {"Ok"} default button 1
    end try
end repeat

beep 3
于 2013-08-22T14:19:17.800 回答