使用模态按钮框暂停脚本执行<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />你好,
我需要帮助在脚本执行中插入用户控制的暂停。我正在使用 JMP9。
我有一个循环,它运行多个文件并在每个文件上运行 Nonlinear Fit 平台。我想在 Nonlinear Fit 平台上添加一个按钮框,它将暂停脚本执行,以便用户可以在继续下一个分析之前确认拟合参数是否正确。实现这个的最佳方法是什么?我的一些尝试如下。
先谢谢您的帮助!
/*
// 这有效,但不会暂停脚本执行。
非线性拟合<<追加(
Button Box( "当最终确定适合时点击这里。",
(nonlinearfit[Outline Box( 2 )] << Close( 1 ) ; nonlinearfit<< Journal ; parameters = nonlinearfit[Number Col Edit Box( 5 )] <<
制作成数据表; )
)
);
// 这些不起作用。
非线性拟合<<追加(
Button Box( "当最终确定适合时点击这里。", << 模态,
(nonlinearfit[Outline Box( 2 )] << Close( 1 ) ; nonlinearfit<< Journal ; parameters = nonlinearfit[Number Col Edit Box( 5 )] <<
制作成数据表; )
)
);
非线性拟合<<追加(
Button Box( "当最终确定适合时点击这里。",
(nonlinearfit[Outline Box( 2 )] << Close( 1 ) ; nonlinearfit<< Journal ; parameters = nonlinearfit[Number Col Edit Box( 5 )] <<
制作成数据表; ) << 模态
)
);
非线性拟合<<追加(
Button Box( "当最终确定适合时点击这里。",
(nonlinearfit[Outline Box( 2 )] << Close( 1 ) ; nonlinearfit<< Journal ; parameters = nonlinearfit[Number Col Edit Box( 5 )] <<
制作成数据表; )
) << 模态
);
*/
回复:使用模态按钮框暂停脚本执行杰出的!非常感谢女士!
回复:使用模态按钮框暂停脚本执行我不确定如何使用该按钮。 模态窗口的问题是,在单击“确定”之前,什么都不会发生(脚本方式或交互方式)。 当创建新窗口并挤满屏幕时,也可能难以在特定的非线性窗口中按下按钮。
下面是一个解决方案,让用户单击“开始”以完成非线性拟合、查看结果,完成后单击一个按钮,该按钮既保存结果(到日志和表)并移至下一个表。 这种方法适用于您的环境吗?
大班=打开( “$SAMPLE_DATA/大类.JMP” ) ;
大班<<新建专栏( “身高估计” ,
数字,
连续的,
格式( “最好的” , 12 ) ,
公式(范围( { A = 1个, b = 1个, C = 1个, d = 1个} , A * ( :重量+ b ) + C * :重量*正弦波( d * :重量) ) )
) ;
数据表= {大班,大班,大班} ; //要循环的数据表列表
n文件= N 项(数据表) ; // 表数
表格= 1个;
参数=新表( “参数” ,新建专栏( “数据集” ,特点) ) ; // 保存所有拟合参数的表
非林=表达式(
非线性拟合=新窗户( “非线性拟合” ,
hlb = H 列表框(
评价(数据表[表格] ) <<非线性(是( :高度) , X ( :身高估计) ,牛顿) ,
V 列表框(
文本框( “完成拟合后单击下方” ) ,
按钮盒( “保存结果并运行下一个表” ,
非线性拟合[轮廓框( 2个)] <<关闭( 1个) ;
非线性拟合[轮廓框( 1个)] <<杂志;
parameters_temp =非线性拟合[数字列编辑框( 3个)] <<制作成数据表;
名称列= parameters_temp <<新建专栏( “数据集” ,特点,设置每个值(评价(数据表[表格] ) <<取名) ) ;
名称列<<搬去(第一的) ;
参数<<串联( parameters_temp ,附加到第一个表) ;
非线性拟合<<关闭窗口;
关闭( parameters_temp ,没有保存) ;
如果(表格< n文件,
表格++;
非林; // 下一张表
非线性拟合<<将窗口置于最前面;
) ;
)
)
)
)
) ;
非林;
回复:使用模态按钮框暂停脚本执行这是一个示例脚本,可帮助简化调试。
/*
bigClass = Open( "$SAMPLE_DATA/Big Class.JMP" );
bigClass << New Column( "身高估计值",
数字,
连续的,
格式(“最佳”,12),
公式( 参数( {a = 1, b = 1, c = 1, d = 1}, a * (:weight + b) + c * :weight * Sine( d * :weight ) ) )
);
nonlinearfit = New Window( "Nonlinear Fit", bigClass << Nonlinear( Y( :height ), X( :height estimate ), Newton ) );
非线性拟合<<追加(
Button Box( "当最终确定适合时点击这里。",
(nonlinearfit[Outline Box( 2 )] << Close( 1 ) ; nonlinearfit << Journal ; parameters = nonlinearfit[Number Col Edit Box( 3 )] <<
制作成数据表; )
)
);
新窗口(“文本框”,<<模态,文本框(“等等!不要运行这个文本框!” ), 按钮框( "确定" ) );
*/