Applescript 有“退出”吗?或“死”类似于 PHP 的命令?
如何在 Applescript 中抛出错误并退出?我想要类似 PHP 的 die
或 exit
命令,这样“已完成”对话框就不会触发。
function1()
display dialog "completed"
on function1()
function2()
end function1
on function2()
exit //what do i use here?
end function2
这是我尝试过的答案,如下所示:
function1()
display dialog "completed"
on function1()
function2()
end function1
on function2()
try
display dialog "Do you want to catch an error?" buttons {"Continue without error", "Cause an error"} default button 2
if button returned of result is "Cause an error" then
error "I'm causing an error and thus it is caught in 'on error'"
end if
display dialog "completed without error"
on error theError
return theError -- this ends the applescript when an error occurs
end try
end function2
How can I throw an error and exit in Applescript? I'd like to have something like PHP's die
or exit
command so that the "completed" dialog does not fire.
function1()
display dialog "completed"
on function1()
function2()
end function1
on function2()
exit //what do i use here?
end function2
Here is what I've tried with the answer that was posted below:
function1()
display dialog "completed"
on function1()
function2()
end function1
on function2()
try
display dialog "Do you want to catch an error?" buttons {"Continue without error", "Cause an error"} default button 2
if button returned of result is "Cause an error" then
error "I'm causing an error and thus it is caught in 'on error'"
end if
display dialog "completed without error"
on error theError
return theError -- this ends the applescript when an error occurs
end try
end function2
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
试试这个;)
编辑:根据您的评论...只需从您的函数返回值。检查调用函数的主代码中的返回值,返回值将告诉您是否应该“退出”应用程序。因此,这是解决示例问题的一种方法......
Try this ;)
EDIT: Based on your comment... just return values from your functions. Check that returned value in your main code where you call the functions and the return value will tell you if you should "quit" the application or not. As such here's one way to solve your example problem...