我知道你可以将 foo 设置为(显示对话框“Dialog”默认答案“默认”)返回的文本
。
我已经尝试了从 set foo to number returned of
或 set foo to integer returned of
的所有方法,但我似乎找不到用于返回数字的关键字。有什么帮助吗?
最佳答案
您需要获取返回的文本,然后将其强制转换为整数:
set foo to (text returned of (display dialog "Enter a number" default answer "42")) as integer
或者,拆开更能说明的是:
display dialog "Enter a number" default answer "42"
set foo to text returned of the result
set foo to foo as integer
我会把它分开,这样你就可以在强制转换周围包裹一个 try block ,以防它不是数字。
set foo to text returned of (display dialog "Enter a number" default answer "42")
try
set foo to foo as integer
on error err
set foo to 0
end
并且,这是一种反复询问的方法,直到他们提供有效的号码:
set msg to "Enter a number"
repeat
set foo to text returned of (display dialog msg default answer "42")
try
set foo to foo as integer
exit repeat
on error err
set msg to "That's not a valid number. Please enter a number."
end try
end repeat
return foo
关于string - "set foo to text returned of"代表数字吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23921177/