Skip to main content

属性:hide_all_locals

pragma 防止签名的所有局部变量在“列表组件”功能的显示中、输入助手中或在线模式下的声明部分中可见。此外,这些变量隐藏在符号配置中,因此不能作为符号导出。 pragma 在库 POU 中特别有用,可以对用户隐藏 POU 变量。

. 受影响的功能
  • 图书馆管理

  • 调试

  • 输入助手

  • “列出组件”功能

  • 监控

  • 符号配置

句法

{attribute 'hide_all_locals'}

插入位置:POU 声明部分上方的第一行

270. 例子

功能块 FB_MyB 使用属性:

{attribute 'hide_all_locals'}
FUNCTION_BLOCK FB_MyB
VAR_INPUT
        iInB : INT;
        {attribute 'hide'}
        xInvisibleIn : BOOL;
        xInit: BOOL;
END_VAR
VAR_OUTPUT
        iOutB : INT;
END_VAR
VAR
        iCounter : INT;
        xVar : BOOL;
END_VAR

功能块的两个实例 FB_MyB 在主程序中定义。

PROGRAM PLC_PRG
VAR
        fbMyB1, fbMyB2: FB_MyB;
        iVar3: INT;
        iVar4: INT;
END_VAR

fbMyB1(iInB := 2, xInvisibleIn := TRUE, iOutB => iVar3);
fbMyB2(iInB := 2, iOutB => iVar4);
IF fbMyB2.iCounter > 100 THEN
        fbMyB2.xInit := TRUE;
END_IF

现在,当您将程序下载到控制器、启动它并切换到在线模式时,变量 iInB, xInit, iOutB, 和 xReset 显示在声明编辑器中。然而,隐藏的局部变量 iCounterxVar 不显示。