【问题标题】:imageJ java : variable defined in one macro cannot be called in a second macro?imageJ java:一个宏中定义的变量不能在第二个宏中调用?
【发布时间】:2015-10-09 03:56:05
【问题描述】:

我正在使用我认为基本上是 Java 的 imageJ。在一个宏中,我将变量“i”定义为 0,我试图在另一个宏中调用 i,然后每次运行第二个宏时将其加一:

macro "number1[1]"{
i=0;
}

macro "number2[2]"{
some function using i;
i++;
}

目标是将 i 设置为零,然后开始使用宏 number2(使用变量 i 执行某些功能)并在每次运行宏 number2 时增加(一些未确定的次数),直到我决定使用将 i 重置为 0宏 number1 再次(在某个未确定的时间点之前...否则我会将其处理为 for 循环)。

我运行宏 number1,然后当我尝试运行宏 number2 时,“i”未被识别为变量。怎么了?

谢谢

【问题讨论】:

    标签: java variables macros iteration imagej


    【解决方案1】:

    在宏之外声明i 变量:

    var i = 0;
    
    macro "Reset count [1]" {
      i = 0;
    }
    
    macro "Increment count [2]" {
      i++;
    }
    

    有关详细信息,请参阅Macro Sets 上的文档。

    附: ImageJ 宏语言不是 Java。它实际上更像 Javascript,但有更多的限制。考虑使用 supported scripting languages 之一来访问 ImageJ 及其插件的完整 Java API。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-08-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多