有没有人知道如何通过运行另一个AppleScript来改变一个AppleScript中的属性? 我知道如何读取存储在单独脚本中的属性,但我无法弄清楚如何编辑它们。
例如。 文件1包含属性:(保存为“测试”到桌面)
property test : 1
文件2能够获取此属性的值
global test
set test to (load script (("/Users/knickman/Desktop/test.scpt") as POSIX file))
if test's test is 1 then
say "yes"
else
say "no"
end if
这很有效。但是,如果我尝试从另一个脚本更改文件1中的值,其中包含以下内容:
global test
set test to (load script (("/Users/knickman/Desktop/test.scpt") as POSIX file))
set test's test to 1
这不起作用。我甚至想做什么?我试图用它作为一个简单的数据库。谢谢你的帮助
答案 0 :(得分:2)
使用load script
加载脚本会在内存中创建存储在test.scpt文件中的脚本对象的副本。
修改加载脚本的属性只会更改内存中脚本对象的值,它对最初加载脚本的脚本文件没有影响。但是,您可以使用store script命令使更改持久:
global test
set test to load script (POSIX file "/Users/knickman/Desktop/test.scpt")
if test's test is 1 then
say "yes"
set test's test to 0
else
say "no"
set test's test to 1
end if
store script test in (POSIX file "/Users/knickman/Desktop/test.scpt") replacing yes