AppleScript-方法

定义方法

on 方法名(参数列表)
return 返回值 -- 如果无返回值可不写
end 方法名

方法的调用可在定义前或定义后

注意:
1、在方法中使用的变量都是局部变量,不能使用外部的变量,其命名也不会和外部的变量造成冲突。

set x to 1  
on renameTest()  
    return x * 5  
end renameTest  
set y to renameTest() 

2、局部变量的命名和外部变量的命名无冲突,修改同名的局部变量的值对外部变量无影响。例如:

set x to 1
on renameTest()
    set x to 2
    return 10
end renameTest
set y to renameTest()
get x --输出1

举例:获取两个数中的较大值
on getMaxNumber(a, b)
    if a > b then
        return a
    else
        return b
    end if
end getMaxNumber
get getMaxNumber(2, 5)

在其他程序中调用本文件的方法

使用 of me
举例:

on test(a)   --该方法是当前程序的方法,即脚本编辑器的方法
    display dialog a
end test
tell application "Finder"
    test("测试方法") of me  -- 在Finder程序中调用,如果没有of me 会报错
end tell

调用.scpt脚本文件中的方法

步骤:
1、加载指定的.scpt脚本文件:load script 脚本文件
2、调用脚本文件中的方法

举例:

set scriptFilePath to choose file -- 选择某个脚本文件
set scriptContent to (load script scriptFilePath) -- 加载脚本文件内容

tell scriptContent
    try
        test("该方法为另一个脚本文件中的方法") -- 调用脚本文件中的方法
    on error error_message number errorNum
        display dialog "异常:" & error_message & "异常号:" & errorNum
    end try
end tell
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1.ios高性能编程 (1).内层 最小的内层平均值和峰值(2).耗电量 高效的算法和数据结构(3).初始化时...
    欧辰_OSR阅读 29,828评论 8 265
  • Swift1> Swift和OC的区别1.1> Swift没有地址/指针的概念1.2> 泛型1.3> 类型严谨 对...
    cosWriter阅读 13,800评论 1 32
  • “近大远小”是绘画中对透视很好的一个说明。 透视的关键在于找准灭点。即最终同一个方向的线条都会交于一点。 如图中铁...
    阿拉斯加海湾0阅读 5,653评论 0 1
  • 卷一 在秋的叹息中你在等什么?我等花之凋落,果的成熟 在困倦的时刻,我枕着书桌的呼吸比昨天更想你 蝴蝶拍动了翅膀叶...
    可回阅读 2,312评论 2 2
  • 都说撒娇女人最好命,可我就是不会撒娇,而且还是急脾气,一言不合就发火,事情做晚了、做的不够好、并且做的效果不如别人...
    张晨曦_6ce6阅读 1,248评论 0 0