首页 > 设计 > 媒体动画 > 正文

Authorware类和函数:authorware6实际示例6 变量、函数和表达式地运用(一)

2020-09-19 18:42:52
字体:
来源:转载
供稿:网友

 主要内容

    我们在学习任何计算机编程语言时,变量和函数都是学习过程中不可缺少的内容,而且是最先接触的内容。我们在这里介绍authorware变量、函数和表达式,并非它们在authorware来讲并不重要,而是因为只有在熟悉了authorware各设计按钮的使用方法和authorware多媒体程序设计基本方法的基础上,我们才可以深刻地理解函数、变量的含义和使用方法,才能将authorware的程序设计按钮和函数、变量及表达式结合起来,创作出优秀的作品来。
    在多媒体程序设计过程中,有时候为了满足特殊的需要,authorware所提供的函数和变量已经不能满足需要,所以读者可以自行定义变量和函数,从而使程序的设计具有更大的灵活性。
    authorware是可视化编程平台,用户主要是使用authorware提供的设计按钮来完成对程序的设计。但是,如果仅仅使用authorware提供的设计按钮来创建作品,则不能充分地实现作品的灵活性、交互性等特性。
    在有些作品的设计中,某些特殊的需求仅仅使用设计按钮是不能实现的,必须使用变量和函数作为程序设计的辅助手段来实现特殊的功能。
    在该实例中,我们使用大量的实例来学习该部分内容,通过对大量实例的分析,来达到对其它函数和变量的使用方法有较深入了解的目的。
    下面,请读者首先学习函数和变量的定义和它们的使用场合。

                           实例过程

    变量和函数的定义
    变量是一个其值可以改变的量。
    系统变量是authorware本身所自带的变量。在程序的执行过程中,authorware随着程序的执行自动监测和调整系统变量的值。例如altdown变量,在程序的整个执行过程中,authorware随时监测alt按钮是否按下,如果该按钮正在被按下,则altdown变量的值为true,否则为false。读者可以在程序中调用该变量作为运行某些特殊内容的触发条件,以便在程序运行的全过程都可以监测该变量,随时执行相应的反馈信息。
    自定义变量是用户自己定义的变量。authorware允许用户自己创建新的变量,authorware同样也可以跟踪存储变量值的变化。

注意:
    系统变量和自定义变量在使用上是没有任何差别的。但是,请读者注意,在定义自定义变量时,要避免使用同系统变量相同的变量名,否则,会引起系统中相关内容的混乱。

    函数主要是用于某一特殊的操作。authorware为用户提供了大量的系统函数来满足用户程序设计的需要。例如authorware提供的quit()函数,可以使authorware在执行程序时,当碰到该函数则自动结束程序,返回执行程序的操作系统环境。
    对于初级的用户来说,authorware提供的系统函数已基本上能满足需求,所以,初级用户只要熟练掌握系统函数的使用方法就可以了。对于高级用户,如果系统提供的系统函数不能满足需求,则可以自定义函数来满足特殊任务的需求。
    在authorware中,变量和函数的使用有如下方式:

图6-1【运算】设计按钮对话框

    (1)在【运算】设计按钮对话框中使用。例如,我们为了使程序运行到某个位置的时候自动退出而返回操作系统中:
    ①首先可以在该位置设置一个【运算】设计按钮。
    ②然后双击打开该设计按钮对话框。
    ③最后在图6-1所示的【运算】设计按钮对话框中输入“quit(0)”。这里的quit(0)就是一个系统函数,该系统函数的作用是结束一个正在执行的authorware  程序,并返回windows窗口。
    (2)在各设计按钮的对话框中使用:在对话框中,函数和变量主要是用来设置控制条件。当设置的控制条件为真时,执行一种任务。否则,就执行另一种任务。

图6-2在正文对象中插入变量

    (3)在【显示】设计按钮中显示变量的数值或内容。在程序设计的过程中,为了使用变量或函数来显示某一类信息,可以将变量或函数插入到正文对象中。 例如:为了显示某一学生在多媒体cai测试中的成绩,我们可以自定义一个变量score来存储学生的成绩,程序的设计过程中实现的过程如下:
    (1) 在测试结构之后,添加一个【显示】设计按钮。
    (2) 双击打开该【显示】设计按钮。
    (3) 在展示窗口中输入的正文如图6-2所示;在该实例中,score是自定义变量,用来存储学生测试的成绩。
    (4) 用鼠标点击窗口中的任意位置,弹出如图6-3所示的【variables】对话框。
    (5) 如图所示设置该对话框来定义新的变量。
    (6) 单击【ok】按钮,结束设置。
    (7) 读者可以观察到展示窗口中插入变量的正文对象的内容已经改变,正文对象中的变量名被实际的内容所代替,如图6-4所示。

注意:
    在一个表达式中也可以使用变量和函数。表达式由变量、函数、常数和运算符组成。通过运算符将变量、函数、常数组合产生一个结果。

 

图6-4插入变量的正文对象显示情况

变量的类型

    变量有两种,一种是authorware提供的系统变量;另一种是用户自定义的变量。
    1. 系统变量
    系统变量是authorware自身所提供的一套变量,它们主要用来跟踪各设计按钮中相关信息或系统信息等多方面的信息。
    每一个变量都有一个唯一的名称。系统变量的名称是以大写字母开头,有一个或几个单词组成,单词之间没有空格。例如altdown等。有些变量后面可以跟一个“@”字符再加上一个设计按钮的标题名,这种变量称为引用变量。利用引用变量读者可以查找文件中任意一个设计按钮中的相关信息。
    2. 自定义变量
    如果用户的需求超出了authorware所提供的系统变量的功能,用户可以定义一个变量,这种变量我们称之为自定义变量。
    自定义变量是由用户自己定义的,在程序的设计中,要求变量名的唯一性,所以读者在定义一个新的变量时,新的变量名必须是一个除了系统变量名和已存在的自定义变量名外的新的名称。自定义变量的使用方法同系统变量,能使用系统变量的地方也可以使用自定义变量。自定义变量的初始值是由用户赋给的。
    变量的赋值有以下两种方法:
    (1) 定义新的自定义变量时在【variables】对话框中给变量赋值。
    (2) 在【运算】设计按钮对话框中使用赋值符号“:=”给变量赋初值。格式为:
    “变量名”:=“初始值”
    其中“:=”称为赋值符号。在authorware的程序设计中,读者可以直接使用“变量名”=“初始值”来赋值,authorware会自动检测赋值过程,并自动为赋值符号添加一个“:”。例如:city:=“北京”,pause:=true等。
    根据变量的存储类型,变量可以划分为三种。
    在其它的编程语言中,例如c 、c++、fortran等语言中,变量的定义和使用是非常复杂的。例如:在fortran语言中,变量的类型有:
    全局变量
    局部变量
    仅就一个简单的数值型变量,fortran又有如下类型:
    整型
    实型
    单精度
    双精度
    长整型
    各种各样的变量类型使用户眼花缭乱,学习起来非常困难的。之所以将变量定义得如此复杂,其主要目的就是为了节省宝贵的内存资源。
    在authorware中,我们没有必要为定义变量的各种类型煞费苦心,authorware没有区分变量的整型和实型,是全局变量还是局部变量,以数值型变量来说,authorware只有一种单一的类型:数值型,authorwar将所有的变量都视为全局变量。
    (1) 数值型变量:数值型变量用来存储具体的数值。数值的类型是任意的数值,可以是整型(例如50、-30等)、实型(例如3.4456、-5.654)。
    在authorware中,数值型变量的存储范围是
    (2) 字符型变量:字符型变量用来存储字符串。字符串是由一个或多个字符组成的。例如:“this is $100”、“the number is 3444”和“*as?”等都是字符串。
    请读者注意,在我们把字符串赋值给一个字符型变量的时候,必须为字符串加上双引号。在authorware中,一个字符型变量可以存储的字符数长达3000个。
    (3) 逻辑变量:逻辑变量存储两种状态:true 或者false。
    逻辑变量最典型的用途是作为一个判断条件,激活或不激活某一选项。

函数的类型

    函数主要用来执行一种特殊的操作。  authorware的函数分为以下两种类型:
    (1) 系统函数:系统函数是authorware自身提供的一系列函数。这些函数对于图形对象、正文对象、设计按钮和文件等进行直接操作。

注意:
    对于函数来说,名称必须唯一,而且每一个函数必须遵循某种使用规则,这种规则称之为语法。一个函数一般包含一至几个参数,函数的参数是authorware为完成某一特定任务所必须的信息。例如函数random(min, max, units),参数为min(最小值)、max(最大值)和units(小数点后位数)。系统函数均以大写字母打头,由一个或多个单词组成,单词之间没有空格。
    (2) 自定义函数:对于authorware系统无法完成的特殊任务,读者可以自己定义函数来完成这些任务,具体的内容参见后面的创建自定义函数。

系统变量的分类和使用

    authorware所提供的系统变量可以分为以下九大类:
    decision:判定判断变量。
    file:文件管理变量。
    framework:框架管理变量。
    general:一般用途变量。
    graphic:图形控制变量。
    icons:设计按钮管理变量。
    interaction:交互管理变量。
    time:时间管理变量。
    video:视频管理变量。
    在系统变量的九大类中,各自还有处理这一类对象的大量变量,下面我们将通过具体实例来学习系统变量的使用方法。
    1. 在应用程序中使用系统变量:
    在应用程序中使用系统变量,具体的操作步骤如下:
    (1) 选择变量的插入位置:

图6-5 在【运算】对话框中插入系统变量

    ① 如果在【运算】设计按钮对话框中的某个表达式和某一函数中使用变量,则首先将光标移动到要插入变量的位置。例如我们要将getword()函数中的string参数用hottextclicked系统变量代替,首先在图6-5中选择string,然后使用键盘来输入该系统变量的名称。
    ② 如果要在一个设计按钮的对话框中使用系统变量,则首先需将光标移动到要插入变量的地方。例如我们在一个热区响应类型的【response】对话框中的【active if true:】正文输入框中使用altdown系统变量,则首先需将光标移动到正文输入框中要插入该系统变量的地方。如图6-6所示。

图6-6 在对话框中插入系统变量的位置

    (2) 使用【window】菜单中的“variables”命令,或按快捷键ctrl+shift+v,打开如图6-7所示的【variables】变量对话框。

图6-7 【variables】变量对话框

    (3) 在图6-7所示对话框中的变量类型【category】下拉列表中选择所使用的变量类型,会在变量名称显示框中显示所有属于该类型的变量的名称。如果我们不知道所使用变量的所属类型,可以选择该下拉列表中的【all】选项,这样在系统变量名称显示框中将按照字母的顺序显示authorware所有系统变量的名称。
    (4) 在图6-7所示变量名称列表中单击要使用的系统变量名。
    (5) 单击对话框中的【paste】命令按钮,便将该变量使用时的名称剪贴到前面所指定的位置上。
    (6) 【variables】变量对话框是一个独立的浮动窗口,如果还要在其它地方使用系统变量,不需要关闭变量对话框,只需首先选择要插入系统变量的位置,然后重复上述操作即可。
    (7) 当将所有需要插入的变量完成后,使用【done】命令按钮关闭对话框。

注意:
    如果读者对系统变量的名称和使用方法非常熟悉,则不必使用【variables】变量对话框来剪贴插入变量,读者可以直接在图6-6所示的正文输入框中直接输入变量的名称。
    2. 引用变量和查询指定设计按钮中变量的值
    在authorware中,变量的值是随着程序的执行随时改变的,因此,在程序的不同地方,变量的值有可能不同。在authorware中,有很多变量允许用户在一个程序的不同的地方查阅某个设计按钮中该变量的值。我们称这样的变量为引用变量。

注意:
    引用变量的格式为:“变量名”@“设计按钮标题”。
    下面,让我们用一个简单的例子来说明引用变量的使用方法。
    该实例的内容是:使用entrytext变量查阅最终用户正文输入响应中输入的正文内容,然后在程序的执行过程中将用户输入的内容在适当的位置重新显示出来。
    程序的逻辑结构如图6-8所示。

图6-8程序的逻辑结构

    在程序中我们使用了【交互作用】设计按钮中的【正文输入】响应分支结构来读取用户输入的正文,将用户输入的内容存储在系统变量entrytext中,在标题为“回显正文”的【显示】设计按钮中创建一个正文对象,在正文对象中插入系统变量entrytext来显示用户输入的信息,插入的形式为“用户输入的内容为:{entrytext@“输入”}”,如图6-8所示。

    3. 自定义变量的定义和编辑
    虽然authorware提供了跟踪所能想象的任何事件的变量,但在很多时候,读者还是希望创建自己的变量来跟踪某一特定的内容。例如:在创建要求用户输入姓名、学号的一个交互性对话时,用户可以使用authorware提供的username来跟踪用户姓名,但你还要创建一个变量来跟踪用户的学号。
    在authorware中,有两种自定义变量的方法:
    方法一:使用新建变量对话框来自定义变量。
    如果读者在运算对话框、展示窗口或对话框的一个区域中输入了系统不认识的变量,则系统将打开如图6-9所示的新建变量对话框。

    当新建变量对话框打开后,用户需要在对话框中输入以下内容:
    (1)【name】:变量名称正文输入框:该区域显示的是autorware不认识的变量的名字,在该正文输入框中,我们要输入待定义变量的一个具有描述性的名字。例如userid,该名字能表达实际的含义,意思是用户的id号。而象“a”或“x1”等都不是好的变量命名。
    (2)【initial value】:初始值正文输入框:该正文输入框是可选的。使用该正文输入框可以为用户所定义的变量设置初始值。程序每次开始运行该模块时都将该正文输入框中的值如同给authorware系统变量赋值一样赋给用户变量。
    (3)【dispriction】:描述性文本区域:该输入框也是可选的。
    由于该区域是可选的,所以经常被编程人员所忽略。事实上,该区域在程序的设计过程中是非常重要的。
    在程序设计的初期,创建这些变量的程序设计者可能非常熟悉各变量的含义和使用方法,但是设计者会发现,程序开发小组中的其它开发人员,甚至是创建变量的开发者自己,在创建变量的几个月后都不再明白变量的含义和最初创建该变量的目的。所以,为了程序开发有序性和便于今后理解和使用自定义变量,请读者在该区域中尽可能地加以描述。

注意:
    关于自定义变量的数目,在authorware中是没有限制的。但是,在程序的开发过程中,笔者建议读者尽可能地限制自定义变量的数目。变量越少,应用程序越容易维护。

    方法二:使用【variables】变量对话框来自定义变量。
    在运算对话框、展示窗口或对话框的一个区域中输入系统不认识的变量之前,我们可以使用【variables】变量对话框(如图6-10)来预先定义一个自定义变量。

图6-10【variables】变量对话框

    具体的步骤如下:
    (1) 在【catagory】变量类型列表中选择图示的文件名,该文件名表示所要定义的变量属于所选择的文件。
    (2) 单击【variables】变量对话框中的【new】命令按钮,弹出新建变量对话框,如图6-11所示。

图6-11 新建变量对话框

    (3) 依照方法一,在新建变量对话框中输入如图6-11所示的内容。
    (4) 单击【ok】命令按钮结束新变量的设置,结果如图6-12所示。

    (5) 读者可以使用图6-12中相应的命令按钮来修改所设定的变量。
    ①【rename】命令按钮:单击该命令按钮,弹出图6-13所示的【rename variable】对话框,在该对话框中来修改变量的名称。

    ②【delete】:删除命令按钮:
    单击该命令按钮,删除在变量名列表中选择的自定义变量。
    (6) 直接在该对话框中设置变量的初始值和观察变量的当前值。
    (7) 单击该对话框中的【done】命令按钮结束对新变量的定义。则新定义的变量就可以在authorware的程序中使用了。

注意:
    在【variables】变量对话框中,authorware所提供的系统变量在该对话框中是不能修改和删除的。只要用户自定义的变量才可以使用修改和删除命令。

技巧:
    【variables】变量对话框在调试有大量变量的应用程序时是非常有帮助的。我们可以通过使用该对话框来监测变量值的变化。

    4. 变量的赋值
    变量最重要的作用是存储信息,所以我们要经常为变量赋值,正如读者所了解的,每一个程序模块运行时,authorware为许多变量都赋了一个初值。
    对变量赋初值,我们按照下面的步骤来进行:
    (1) 打开【运算】设计按钮对话框。
    (2) 首先输入要赋值的变量名。例如我们要为学生的学号来赋值,则首先在【运算】设计按钮对话框中输入变量名userid。
    (3) 然后输入冒号和等号(:=)。

注意:
    authorware要求在赋值时使用一个冒号然后加一个等号,但在实际的操作中,读者可以直接使用等号,authorware在关闭运算设计按钮对话框时,会自动为读者加上一个冒号。
    (4) 在等号后输入你想赋给变量的值。对于所赋给变量的值有如下格式:
    ① 字面常量:将所赋的值放在引号内,变量精确地等于你所输入的值。例如:为变量userid赋给精确的值964674,如图6-14所示。

图6-14 引号内的精确值赋给变量

    ③ 变量:将一个变量的值赋给另一个变量:例如为了获取用户在正文输入响应中输入的内容,我们可以使用entrytext系统变量为变量userid赋值,如图6-15所示。

图6-15 变量间赋值

    ③ 表达式:将一个表达式的值赋给变量:例如:要将用户在交互响应的正文输入响应中输入的学号全部更换为大字母的名字,我们可以使用entrytext变量和uppercase函数来实现,如图6-16所示。

图6-16 将表达式的值赋给变量

    前面我们学习了变量的定义和一般使用步骤,下面我们将以实例来分别介绍系统变量在程序设计中的实际应用,这些实例分别隶属于系统变量的九大类。对每一类系统变量我们分别以一个实例来学习该类变量的使用方法,目的是让读者通过这些实例的分析,并结合附录中系统变量的介绍来体会变量在程序设计中的作用,并掌握变量在程序设计中的使用技巧。
    变量是authorware所提供的编程中强大的辅助工具,仅仅使用authorware提供的设计按钮来设计多媒体作品是远远不能满足需要的,所以我们需要大量地使用变量来完成某些特殊的操作和实现特定的功能。
能够使用authorware提供的设计按钮来进行程序设计仅仅是初级的要求,对于真正的authorware程序设计人员,必须对authorware所提供的系统变量有比较熟练的掌握,能够灵活地运用这些变量来设计丰富的多媒体作品。
    只有熟练地掌握变量的使用方法才能进入authorware编程的新天地。希望读者在下面的学习中仔细体会各系统变量的使用技巧和应用方法与范围。

实例一:decision类,pathcount和repcount变量:
    本实例是利用pathcount来存储当前【判定】分支结构中反馈分支的总个数,repcount用了存储所执行的反馈分支的次数。使用这两个变量,我们可以计算出在该【判定】分支结构中,authorware退出该分支结构之前运行的反馈分支占分支总数的百分比。程序的逻辑结构如图6-17所示。
    要实现这种任务,我们需在分支结构的【运算】设计按钮中输入如下内容:

图6-17 实例一程序逻辑结构

    这里的percentcomplete为一个自定义变量,使用该变量来存储athorware所执行过的分支结构反馈分支占反馈分支总个数的百分比。
    我们可以在图6-17所示的“显示比例”【显示】设计按钮正文对象中插入该变量来显示百分比。

实例二:file类:filelocation变量
    filelocation变量包含运行程序模块所在的路径。例如:读者所执行的程序模块路径为:“d:/authorware/test/examp618.a4p”,则filelocation变量中存储的就是“d:/authorware/test/”。
    该实例的内容是将用户输入的用户名(username变量)、日期和成绩写入与所执行的程序模块在同样路径的studentdata.txt文件中。
    在程序的【运算】设计按钮中输入的内容如图6-18所示:
    我们利用writeextfile("filename", "string")函数将用户输入的信息写入文件中:

图6-18 实例二的程序设计

    writeextfile("filelocation^studentdata.txt", "username^tab^date^tab^score")

提示:
    在该函数中,符号“^”表示将该符号前面和后面的字符串连接起来,我们将在后面学习authorware支持的运算符号。

提示:
    “tab”键为该学生的各个信息之间在写入文件时提供一个间距。

实例三:framework类,currentpageid变量:
    currentpageid变量是一个数值型变量,用于存储当前显示页的设计按钮id标识;我们可以使用其引用变量来存储指定页的设计按钮id标识。
    本实例中,我们使用currentpageid变量存储的值来标记框架结构中的页,以便于在今后的程序运行过程中返回这些页,被标记的页的标识号存储在bookmark列表中,程序的逻辑结构如图6-19所示:

图6-19 实例三程序逻辑结构

    在make bookmark【运算】设计按钮对话框中输入如下内容:
    bookmark=insertline("bookmark",0, currentpageid)
    该表达式的意思是向bookmark中添加一个新页的id标识。
    在goto mark设计按钮中包含一个【运算】设计按钮,其中的内容如下:
            mark=getline(bookmark,1)
            bookmark=deleteline(bookmark,1)
    这两个表达式的含义是得到最新加入到bookmark列表中的页,然后再从列表中将该页的标识从列表中删除。经过这样的设置后,【定向】设计按钮就会跳转到mark 标记的页中来执行该页中的相关反馈信息。

注意:
    该实例中的三个函数insertline()、 getline()和deleteline()的具体使用方法参见附录。

实例四:general类,clickx和clicky变量:
    当用户最后单击鼠标按钮时,clickx包含从展示窗口左侧边框到鼠标点的位置的像素数,clicky包含从展示窗口上侧边框到鼠标点的位置的像素数,如图6-20所示。

图6-20 变量值的实际含义

    其中图6-20中的黑色边框为展示窗口。
    使用该变量,我们可以在游戏的制作中将一个大的区域划分为许多小的区域,并可以确定用户在哪一个区域中敲击了鼠标。从而,确定程序的运行方式。具体的划分区域的方法如图6-21中的【运算】设计按钮对话框中的内容。

图6-21用clickx和clicky去发现用户最后单击鼠标的位置

    使用该对话框,我们可以将展示窗口划分为20个像素宽的正方形小方格,当用户单击了鼠标后,我们就可以知道用户单击鼠标在方格中的位置。

实例五:graphics类:layer变量:
    layer变量用于存储当前(或指定的)【显示】设计按钮、【交互作用】设计按钮、【数字化电影】设计按钮所处的层数。在该实例中,我们在程序中插入一个数字化电影,使用layer变量的引用变量来设置数字化电影的层级别,使数字化电影的每一帧图像必须位于“背景”【显示】设计按钮中显示对象的前面。为了实现该特殊要求,操作步骤如下:
    (1) 选择数字化电影设计按钮,使其高亮。
    (2) 执行authorware所提供的【modify】菜单中【icon】子菜单的【properties】命令(快捷键为ctrl+i),或者用鼠标双击该【数字化电影】设计按钮,弹出图6-22所示的【数字化电影】属性对话框。

图6-22 设置【数字化电影】层的级别(设置层间相互关系)

    (3) 在该对话框的【layer】正文输入框中输入:
    layer@"背景"+1
    (4) 单击【ok】命令按钮结束设置。
    使用这种设置,当程序运行时,数字化电影所播放的每一帧都在“背景”【显示】设计按钮中所显示对象的前面。

实例六:icons类,displayx和displayy变量:
    这两个变量存储的是特定设计按钮内显示对象的中心与展示窗口边框的距离。displayx变量存储的是显示对象中心与展示窗口左边框的距离,以像素点为单位;displayy变量存储的是显示对象中心与展示窗口上边框的距离,以像素点为单位。

    程序的逻辑结构如图6-23所示。在该实例中,我们在“circle”【显示】设计按钮中绘制一个填充为蓝色的圆,设置该圆可以在一定区域中移动(使用【in aera】选项),然后设置一个【等待】设计按钮,给用户一个能移动圆的时间,在“圆在展示窗口的位置坐标”【显示】设计按钮中输入正文对象,在正文对象中插入引用变量。如图6-24所示。

 

 

图6-24在正文对象中插入引用变量

    程序的运行结果是:当用户移动圆到不同的位置时,在展示窗口的左上角将出现对象最终显示位置的坐标。程序的运行结果如图6-25所示。

 

图6-25程序的运行结果

实例七:interaction类,entrytext变量:
    entrytext变量存储的是最后在文本输入对话框中用户输入的文本。读者在创建一个文本输入对话框时,为了获得用户在文本输入对话框中输入的内容,需要使用该变量。
    该实例是让用户从一个交互作用的文本输入响应类型上输入姓名和学号,然后程序读取用户的学号和姓名,再将姓名和学号显示在展示窗口中。程序的逻辑结构如图6-26所示。

    使用【交互作用】分支结构的正文输入响应让用户输入相应的内容。
    【运算】设计按钮中使用entrytext变量将用户输入的内容赋给相应的变量。如:username等。【运算】设计按钮对话框中输入的内容如图6-27所示。
    在该对话框中我们输入username:=entrytext
    同样,在下一个【运算】设计按钮中输入如下内容:
    userid:=entrytext
    然后在“回显”【显示】设计按钮中显示用户输入的内容。

图6-27 【运算】设计按钮中的输入内容

实例八:time类,fulldate变量:
    该变量存储的是计算机系统当前的日期,其格式"1998年9月29日"。要在应用程序的演示过程中显示计算机系统当前的日期,则可以在正文输入对象中插入变量{fulldate}。

实例九:video类,videodone变量:
    videodone变量是一个逻辑型的变量,该变量有两种值,一种是true,另一种是false。在当前的视频信息播放结束时,该值为true。为了在程序执行到另一个设计按钮之前完成某个视频信息的播放,可以设置一个判定分支结构,并在图6-28所示的对话框中的【until true】正文输入框中输入videodone。例如,要使某个视频信息播放完毕后,立刻播放另一段视频信息,则可以在图示的对话框中进行设置。

图6-28 videodone使用实例

    除了上面读者所学习的九大类中的九个变量的实例外,在下面请读者熟悉笔者在工作中经常使用的几个变量。
    (1) choicenumber:authorware中的系统变量choicenumber存储的是当前交互循环中用户匹配的最后响应的编号,响应路径从【交互作用】设计按钮的左边至右边依次编号,编号从1号开始。
    我们可以使用该变量来判定是否要显示特定的反馈。例如,如果用户匹配的响应是交互作用中的前三个响应中的任意一个,那么程序将快放这三个反馈分支中的内容。否则,以正常速度播放,如图6-29所示,条件响应的类型可以设置为表达式:choicenumber<4。

图6-29choicenumber在条件响应中的使用

注意:
    在程序中,我们要随时跟踪choicenumber的使用位置,如果在交互分支结构中,增加或减少了路径的个数,则需要对表达式进行修改
    (2) hottextclicked:当用户用单击或双击作为触发条件来敲击文本的触发器时,hottextclicked存储用户单击或双击触发的敲击文本。
    使用该变量可以为读者作品中的目录创建超级链接。当用户单击热文本时,可以使用【导航】设计按钮在框架结构中查找每一页上的关键词是否为hottextclicked所存储的值,如果找到该值,则程序模块就跳转到该页中去执行相应的内容。
    (3) iconid: iconid变量存储的是特定设计按钮的唯一的数字标识符。当【导航】设计按钮与一个【运算】设计按钮一起使用时,该变量具有决定性的意义。

    该变量还可以连接其它的变量和函数。例如读者可以使用【擦除】设计按钮来擦除基于该变量值的一个设计按钮中的对象。使用方法如图6-30所示。

图6-30 使用iconid命令返回设计按钮的id标识

    (4) lastlineclicked:lastlineclicked存储的是用户单击一个文本对象的某一行的行号。行是用回车符定义的。
    读者可以利用该变量的特性,来创建一个书签系统。当用户单击一个书签名列表中的某一行文本时,authorware利用该变量来识别单击的是哪一行。然后,我们可以通过所在行数来得到其它相关的信息,从而,执行与该行有关的双击按钮。
    (5) timeoutlimit:在程序跳转到由系统函数timeoutgoto指定的设计按钮之前,timeoutlimit以秒为单位来标志模块等待用户某种类型活动的时间量。
    在演示会和展览会上,我们可以用该变量来控制系统空闲多长时间。一旦控制时间到,程序将跳至指定的双击按钮来执行该设计按钮中的内容。如图6-31所示。

图6-31 timeoutlimit控制系统空闲时间

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表