JMP社区的各位好,
我正在开发一个 JMP 插件,它可以创建窗口、存储全局变量并调用函数。单实例运行一切正常,但当用户启动插件两次时,两个实例共享同一个全局作用域,导致变量冲突(一个窗口的状态覆盖了另一个窗口的状态)。
我已将脚本初始化为默认名称为 here(1),甚至创建了自己的新空间 (ns = newspace()) 并将所有变量都放在其中,但仍然存在冲突。我知道窗口命名空间,但我也想避免窗口之外的变量发生冲突。
// Launch this script twice — second run breaks the first window
strLabel = "Instance A";
counter = 0;
win = New Window( "Test " || strLabel,
btn = Button Box( "Click me",
counter++;
btn << Set Label( strLabel || " clicked " || Char( counter ) || "x" );
)
);