我想写一个宏来保存首选项,并在关闭并重新打开ImageJ后读取它们。prefs.get问题和设置ImageJ宏
保存工作,但宏不读取文件。此外,当我尝试使用这两行中的一行时,发生变量“Prefs”未知的错误。
int myNumber = Prefs.get("my.persistent.number", 0);
Prefs.savePreferences();
我在做什么错?请帮助我:-)
我想写一个宏来保存首选项,并在关闭并重新打开ImageJ后读取它们。prefs.get问题和设置ImageJ宏
保存工作,但宏不读取文件。此外,当我尝试使用这两行中的一行时,发生变量“Prefs”未知的错误。
int myNumber = Prefs.get("my.persistent.number", 0);
Prefs.savePreferences();
我在做什么错?请帮助我:-)
ImageJ宏语言本身不支持存储自定义首选项。 (只有一组内置选项(可通过编辑>菜单中的选项访问)可以是saved,restored和adjusted。)您需要通过call("ij.Prefs.get", "my.persistent.number", "0");
来调用Java类。
myNumber = call("ij.Prefs.get", "my.persistent.number", "0");
print(myNumber);
call("ij.Prefs.set", "my.persistent.number", 3);
在第一次运行,它打印0
;以后的每一次运行都会打印3
;重新启动斐济后,它将再次打印3
。如果更新到最新版本后仍无法使用,请通过帮助>报告错误报告错误,该错误还会向开发者提交有关安装的重要信息,以帮助他们解决问题。
ij.Prefs
Java类,因为你正在试图做到这一点。在使用它之前,请不要忘记导入。这是一个例子的Javascript:importClass(Packages.ij.Prefs);
myNumber = Prefs.get("my.persistent.number", 0);
Prefs.set("my.persistent.number", myNumber);
希望有所帮助。
你确定你在谈论[ImageJ宏语言](http://imagej.nih.gov/ij/developer/macro/functions.html)吗?你的代码看起来更像Java代码。 – 2014-09-05 16:14:07
是啊我敢肯定,发现它在教程和以下链接http://imagej.1557.x6.nabble.com/Making-a-panel-of-buttons-in-a-macro-plugin-td3692757.html http://imagej.1557.x6.nabble.com/Re-How-to-save-macro-variables-values-in-a-text-file-td5001804.html正如我所说的,保存偏好有效,但不是检索。甚至不是当我尝试调用(“ij.Prefs.get”,“myVariableKey”,“defaultValue”); – Nathalie 2014-09-05 16:24:00
“保存偏好作品”是什么意思?你是怎么检查的? – 2014-09-06 11:28:40