Authorware实战开发专题--Eval与EvalAssign函数的应用(一)

4/8/2006来源:Authorware教程人气:8244

Authorware 是 Macromedia 公司开发的一个多媒体课件光盘制作软件,如此软件,我们希望的更多是它的实用价值。为此,太平洋网络学院为大家精心制作一个实例讲解深入开发的 Authorware 专题,希望对于深入学习 authorware 的朋友们有所帮助。
  精通Authorware的开发应用,从某种程度上说取决于是否熟悉掌握运用函数和变量。可是,在众多的Authorware系统函数中,你是否挖掘过Eval和EvalAssign这两个系统函数呢?下面我们就一起来见识一下Eval和EvalAssign这一对兄弟函数的“绝活”吧。

  Eval和EvalAssign这两个系统函数的功能十分相似,只是用法存在差异而已,因此我们称它们为“兄弟函数”。

Eval的表达式如下:

result := Eval("exPRession"[, "decimal", "separator"])

  Eval函数的功能是计算表达式expression的值,并将该值赋给result,在该函数的expression表达式中,不能包含赋值操作符“:=”。

Eval的“兄弟函数”EvalAssign的表达式如下:

result := EvalAssign("expression" [, "decimal", "separator"])

  EvalAssign函数的功能同Eval相似,计算表达式expression的值,并将该值赋给result,在该函数的expression表达式中,可以包含赋值操作符“:=”。

  由此可见,和Eval函数相比,EvalAssign的参数中可以带赋值号“:=”,即它的参数可以是一个赋值语句,而Eval函数则不行。下面我们简单介绍一下Eval函数与EvalAssign函数的具体用法。

Eval的简单用法



图1.1 Eval简单用法范例

  这里我们引用一个范例来说明Eval的简单用法。我们要实现一个简单的计算:提示用户输入一个代数表达式,然后计算出并得出该表达式的值。程序流程图如上图1.1,开始的计算图标是设置演示屏幕的大小,接下来的显示图标“输入提示”提示用户输入一个代数表达式,文本输入交互“*”可接受用户的任意一个字符串输入,然后求值。在这个范例的核心问题就是:用文本交互接受的用户输入“EntryText”是一个字符串,然后怎样将该字符串转化为一个代数表达式,并求出其值?通过Eval函数,我们可以很容易的解决这个问题,如图1.2和图1.3所示,计算图标的表达式如下:

statment:=EntryText^"="^Eval(EntryText)     

  这里求出的用户自定义变量statement是一个字符串,有三部分组成:用户输入的原字符串、“=”符号、结果值,三部分是通过连接符号“^”连接起来的。至于显示图标“显示结果”,只是实现显示变量字符串statement的功能,可直接用文本工具写上{statement}即可。例如:用户输入“4+8”回车,屏幕将显示最后结果“4+8=12”,如图1.4所示。通过这个小小的范例是不是从中得到一点关于Eval函数用法的启示?


图1.2 Eval简单用法范例文本交互内容


图1.3 Eval简单用法范例文本交互内容


图1.4 Eval简单用法范例运行结果