Skip to main content

动画彩色显示

元素的颜色在 颜色 元素属性的属性。在那里,您可以从列表框中选择预定义的样式颜色或在颜色对话框中选择颜色。

颜色变量 element 属性用于元素的颜色动画。当您将变量传递给属性时,您可以在应用程序代码中编程颜色更改或配置导致颜色更改的用户输入。代码中的颜色常量或颜色变量具有数据类型 DWORD 并根据 RGB 颜色空间或 RGBA 扩展进行编码。

RGBA 颜色空间中的颜色定义

重要

激活半透明绘图 选项中提供 可视化管理器.此选项默认启用,以便 透明度 属性可用于所有颜色定义。通过程序化颜色定义,前导字节被解释为 alpha 通道,因此用作颜色的透明度值。清除该选项后, 透明度 属性不可用,并且颜色文字中的前导字节被忽略。

代码中的颜色信息指定为 DWORD 文字。该值在 RGBA 颜色空间中,通常显示为十六进制数。该值使用红色、绿色和蓝色的附加部分进行编码。它附加了决定颜色透明度的 alpha 通道。

颜色文字的字节顺序

16#<TT><RR><GG><BB>

<TT> : 00 - FF      // Transparency in 256 levels
<RR> : 00 - FF      // Red in 256 levels
<GG> : 00 - FF      // Green in 256 levels
<BB> : 00 - FF      // Blue in 256 levels
                    

透明度的分级值为 16#FF 对于不透明和 16#00 为透明。对于每个颜色部分,为 256 个颜色分级保留一个字节 16#FF16#00. 16#FF 表示 100% 颜色部分和 16#00 表示 0% 颜色部分。

<TT>

字节为透明毕业 00-FF

<RR>

字节为红色部分 00-FF

<GG>

绿色部分的字节 00-FF

<BB>

蓝色部分的字节 00-FF

10. 例子
2. 颜色字面量

16#FF0000FF

蓝色,不透明

16#FF00FF00

绿色,不透明

16#FFFFFF00

黄色的。不透明

16#88888888

灰色,半透明

16#88000000

黑色,半透明

16#FFFF0000

红色,不透明





11. 例子

颜色常量的全局声明



以彩色动画显示可视化元素

  1. 在中创建一个标准项目 CODESYS.

  2. 在 POU 树中声明全局颜色常量。

    {attribute 'qualified_only'}
    VAR_GLOBAL CONSTANT
        gc_dwRed : DWORD := 16#FFFF0000;
        gc_dwGreen: DWORD := 16#FF00FF00;
        gc_dwYellow: DWORD := 16#FFFFFF00;
        gc_dwBlue: DWORD := 16#FF0000FF;        // Highly opaque
        gc_dwBlack : DWORD := 16#88000000;      // Semitransparent
    END_VAR                                
  3. 在设备树中,声明局部颜色变量 PLC_PRG.

    VAR
        dwFillColor: DWORD := GVL.gc_dwGreen;
        dwFrameColor : DWORD := GVL.gc_dwBlack;
        dwAlarmColor : DWORD := GVL.gc_dwRed;
    END_VAR                                
  4. 声明一个控制变量。

    bChangeColor : BOOL;
  5. 声明一个输入变量 PLC_PRG.

    bInput : BOOL;
  6. 启用可视化编辑器。

  7. 拖动一个 长方形 元素到可视化编辑器。

    特性 元素视图打开。

  8. 配置矩形的属性如下:

    • 颜色变量, 正常状态, 填充颜色 财产: PLC_PRG.dwFillColor

    • 颜色变量, 正常状态, 框架颜色 财产: PLC_PRG.dwFrameColor

    • 颜色变量, 报警状态, 填充颜色 财产: PLC_PRG.dwAlarmColor

    • 颜色变量, 切换颜色 财产: <toggle/tap variable>

    • 输入配置, 切换, 多变的 财产: PLC_PRG.bInput

  9. 按如下方式对变量进行编程:

    PROGRAM PLC_PRG
    VAR
        dwFillColor: DWORD := GVL.gc_dwGreen;
        dwFrameColor : DWORD := GVL.gc_dwBlack;
        dwAlarmColor : DWORD := GVL.gc_dwRed;
    
        bChangeColor : BOOL;
        bInput : BOOL;
    END_VAR
    
    IF bChangeColor = TRUE THEN
        dwFillColor := GVL.gc_dwYellow;
        dwFrameColor := GVL.gc_dwBlue;
    ELSE
        dwFillColor:= GVL.gc_dwGreen;
        dwFrameColor := GVL.gc_dwBlack;
    END_IF                            

    颜色在运行时初始化。如果变量 bChangeColor 然后被迫 TRUE,矩形的颜色显示发生变化。在可视化中单击矩形时,矩形以报警颜色显示。