第 3章 变量
3.1 变量类别
3.2定义新变量
3.3 变量的位处理
3.4 搜索被引用变量和删除变量
3.1 变量类别
1,窗口中间变量
2,中间变量
3,数据库变量
4,间接变量
5、系统变量
3.1.1 窗口中间变量
窗口中间变量作用域仅限于力控 R应用程序的一
个窗口,或者说,在一个窗口内创建的窗口中
间变量,在其它窗口内是不可引用的,即它对
其它窗口是不可见的。窗口中间变量是一种临
时变量,它没有自己的数据源,通常用作一个
窗口内动作控制的局部变量、局部计算变量,
或用于保存临时结果
3.1.2 中间变量
? 中间变量的作用域范围为整个应用程序,不限于
单个窗口。一个中间变量,在所有窗口中均可引
用。即在对某一窗口的控制中,对中间变量的修
改将对其它引用此中间变量的窗口的控制产生影
响。窗口中间变量也是一种临时变量,它没有自
己的数据源。中间变量适于作为整个应用程序动
作控制的全局性变量、全局引用的计算变量或用
于保存临时结果。
3.1.3 间接变量
? 间接变量是一种可以在系统运行时被其它变量代
换的变量,一般将间接变量作为其它变量的指针,
操作间接变量也就是操作其指向的目标变量,间
接变量代换为其它变量后,引用间接变量的地方
就相当于在引用代换变量一样
例 3-1:一个矩形图形上, 垂直百分比填充, 的动
作要求根据不同的条件,数值来自数据库变量
LIC101.PV和 LIC102.PV。
可以引用一个中间变量 INDIRECT,做如下表
达式:
当条件满足条件 1 时,@INDIRECT =
@LIC101.PV ; //表达式 1
当条件满足条件 2 时,@INDIRECT =
@LIC102.PV ; //表达式 2
3.1.4 数据库变量
? 当要在界面上显示处理数据库中的数据时,需要
使用数据库变量。一个数据库变量对应数据库中
的一个点参数(关于力控 R数据库的信息请参考后
面的内容)
下面介绍定义变量数据源的方法:
激活 Draw菜单, 特殊功能 [S]/数据源, 或在导航
器中打开, 数据源, 项,出现如图 3- 1所示的
,数据源定义, 列表框:
在这个列表框上可以, 添加,,, 删除, 或
,修改, 变量数据源。可以看到,列表框中已
经存在了一个数据源:, 本地实时数据库
( DB), 。这是系统缺省定义的数据源,它指
向本机上的数据库。单击图 3- 1中的, 添加,
按钮,出现如图 3- 2所示的, 数据源定义, 对
话框,框中各项解释如下
3.1.5 系统变量
? 力控 R提供了一些预定义中间变量, 称之为系统变
量 。 每个系统变量均有明确的意义, 可以完成特
定功能 。 例如, 若要显示当前系统时间, 可以将
系统变量, $time”动画连接到一个字符串显示上,
具体参见使用手册
? 系统变量均以美元符号( $)开头。
3.2定义新变量
? 在工程项目控制中有很多新的变量要重新定义,
若要 定义 一个新变量,可按如下步骤进行:
单击 按钮,弹出如图 3- 5所示变量选择对话

单击 按钮,进入实时数据库点定义对话框
3.3 变量的位处理
? 对于数据类型为整型和实型的变量可以按位( BIT)
进行读写访问,访问 VAR整型变量的 16个位,表示
方法分别为,VAR.01,…, VAR.16。比如,如果
将 VAR的值设为 2389,则 VAR.16,…, VAR.01的值
为,0,0,0,0,1,0,0,1,0,1,0,1,0、
1,0,1。
3.4 搜索被引用变量和删除
变量
? 已创建的变量若在动画连接、脚本程序或其它表
达式中被使用过,则变量成为被引用变量,当要
删除一个被引用变量时,首先要找到引用此变量
的动画连接和脚本程序,并对其进行修改以取消
对变量的引用。对没有被引用过的变量可以直接
删除
3.4.1 删除变量
? 若要删除已创建变量,激活 Draw菜单命令, 特殊
功能 [S]/删除变量,,出现如图 3-7“删除变量,
对话框
在下拉框, 变量类别, 中选择要删除变量的
类别,出现提示
3.4.2 搜索被引用变量
? Draw提供了搜索被引用变量的功能。若要查询关
于变量的全部被引用的情况,激活 Draw菜单命令
,特殊功能 [S]/变量引用导航,,出现如图 3- 9
所示的, 选择变量, 对话框:
首先指定要搜索的变量所属的变量类别。在变量
类别下拉框中选择相应变量类别,下面的列表框
中自动列出此类别下的全部变量(包括被引用变
量、未被引用变量)。选择其中一个或多个变量
(若要同时选取多个变量,可在按下, Ctrl”键的
同时,用鼠标左键点击),然后单击, 搜索, 按
钮,经过一段时间的搜索后,出现如图 3- 10所示
的, 变量引用, 对话框:
对话框中被搜索的变量名称按树形结构排列显示 。
如果某一变量名称前面的展开符号显示为,,,
表示此变量已被引用过, 此时用鼠标双击变量名
称或单击展开符,,, 则该变量被引用的内容
进一步展开 。 如果变量名称前面的展开符号显示
为,,, 表示此变量没有被任何地方引用过 。
选择一个被引用过的变量名,用鼠标双击变量名
称或单击变量名前面的展开符,,,变量被引
用的内容进一步展开,如图 3- 11所示
图 3- 11示例中, east变量在窗口动作和动画连接
中均被引用过 。
首先我们来说明如何察看变量在窗口动作中的引
用情况 。
双击, 窗口动作, 项,内容继续展开,如图 3- 12
所示。
可以看出, east变量在名称为, 主楼, 的窗口动
作中被引用, 双击, 主楼, 项, 内容继续展开,
如图 3- 13所示
可以看出,east变量在窗口的周期性动作和进入
窗口动作中被引用过,双击, 窗口运行时周期执
行, 或, 进入窗口,,对应的脚本编辑器被打开,
如图 3- 14所示
在脚本编辑器中,可以利用脚本编辑器的字符查
找功能对变量 east进行查找或替换