在矢量面板设计器中使用工具箱中的"Button",用于 CAPL



我正在用 CAPL 编写测试用例,并希望使用面板设计器中的"按钮"激活每个测试用例。 问题是,每当我按下按钮时,它的反应就像被按下了两次一样。

我只是简单地添加这样的代码以使该问题可见。 (系统变量"@sysvar::Test_Cases::TC1"链接到面板编辑器中的按钮(

on sysvar sysvar::Test_Cases::TC1  
{
putValueToControl("Window","CAPL Output View",@sysvar::Test_Cases::TC1);
}

我希望只看到-->Value of @sysvar::Test_Cases::TC1 =1

但输出是这样的:

@sysvar::Test_Cases::TC1 的值 =1 @sysvar::Test_Cases::TC1 的值 =0

在 sysvar X{...} 事件过程对 X.So的值更改做出反应,在按下按钮的情况下 (0->1( 值将设置为 1,然后在按钮释放时 (1->0( 值将设置为零,因此您将 X 的值更改为两次。这就是为什么你会被触发两次。

要在此类按钮按下事件上仅做出一次反应,并且仅收到一次通知,请使用关键字this和条件语句。

on sysvar sysvar::Test_Cases::TC1  
{
if (this==1) /* Following block is called only once, on button press 0->1 */
{
putValueToControl("Window","CAPL Output View",@sysvar::Test_Cases::TC1);
}
}

最新更新