Authorware实例6__变量、函数和表达式.doc_第1页
Authorware实例6__变量、函数和表达式.doc_第2页
Authorware实例6__变量、函数和表达式.doc_第3页
Authorware实例6__变量、函数和表达式.doc_第4页
Authorware实例6__变量、函数和表达式.doc_第5页
已阅读5页,还剩46页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

实例6 变量、函数和表达式的使用Authorware实例6 变量、函数和表达式的使用& 主要内容我们在学习任何计算机编程语言时,变量和函数都是学习过程中不可缺少的内容,而且是最先接触的内容。我们在这里介绍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中,变量和函数的使用有如下方式: 图61【运算】设计按钮对话框(1)在【运算】设计按钮对话框中使用。例如,我们为了使程序运行到某个位置的时候自动退出而返回操作系统中:首先可以在该位置设置一个【运算】设计按钮。然后双击打开该设计按钮对话框。最后在图61所示的【运算】设计按钮对话框中输入“Quit(0)”。这里的Quit(0)就是一个系统函数,该系统函数的作用是结束一个正在执行的Authorware 程序,并返回Windows窗口。(2)在各设计按钮的对话框中使用:在对话框中,函数和变量主要是用来设置控制条件。当设置的控制条件为真时,执行一种任务。否则,就执行另一种任务。 图62在正文对象中插入变量(3)在【显示】设计按钮中显示变量的数值或内容。在程序设计的过程中,为了使用变量或函数来显示某一类信息,可以将变量或函数插入到正文对象中。例如:为了显示某一学生在多媒体CAI测试中的成绩,我们可以自定义一个变量Score来存储学生的成绩,程序的设计过程中实现的过程如下:(1) 在测试结构之后,添加一个【显示】设计按钮。(2) 双击打开该【显示】设计按钮。(3) 在展示窗口中输入的正文如图62所示;在该实例中,Score是自定义变量,用来存储学生测试的成绩。(4) 用鼠标点击窗口中的任意位置,弹出如图63所示的【Variables】对话框。 图63【Variables】对话框(5) 如图所示设置该对话框来定义新的变量。(6) 单击【OK】按钮,结束设置。(7) 读者可以观察到展示窗口中插入变量的正文对象的内容已经改变,正文对象中的变量名被实际的内容所代替,如图64所示。 图64插入变量的正文对象显示情况注意:在一个表达式中也可以使用变量和函数。表达式由变量、函数、常数和运算符组成。通过运算符将变量、函数、常数组合产生一个结果。*变量的类型变量有两种,一种是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) 选择变量的插入位置: 图65 在【运算】对话框中插入系统变量 如果在【运算】设计按钮对话框中的某个表达式和某一函数中使用变量,则首先将光标移动到要插入变量的位置。例如我们要将GetWord()函数中的String参数用HotTextClicked系统变量代替,首先在图65中选择String,然后使用键盘来输入该系统变量的名称。 如果要在一个设计按钮的对话框中使用系统变量,则首先需将光标移动到要插入变量的地方。例如我们在一个热区响应类型的【Response】对话框中的【Active IF True:】正文输入框中使用AltDown系统变量,则首先需将光标移动到正文输入框中要插入该系统变量的地方。如图66所示。 图66 在对话框中插入系统变量的位置(2) 使用【Window】菜单中的“Variables”命令,或按快捷键Ctrl+Shift+V,打开如图67所示的【Variables】变量对话框。系统变量类别列表系统变量名称列表系统变量的描述和使用方法 图67 【Variables】变量对话框(3) 在图67所示对话框中的变量类型【Category】下拉列表中选择所使用的变量类型,会在变量名称显示框中显示所有属于该类型的变量的名称。如果我们不知道所使用变量的所属类型,可以选择该下拉列表中的【All】选项,这样在系统变量名称显示框中将按照字母的顺序显示Authorware所有系统变量的名称。(4) 在图67所示变量名称列表中单击要使用的系统变量名。(5) 单击对话框中的【Paste】命令按钮,便将该变量使用时的名称剪贴到前面所指定的位置上。(6) 【Variables】变量对话框是一个独立的浮动窗口,如果还要在其它地方使用系统变量,不需要关闭变量对话框,只需首先选择要插入系统变量的位置,然后重复上述操作即可。(7) 当将所有需要插入的变量完成后,使用【Done】命令按钮关闭对话框。注意:如果读者对系统变量的名称和使用方法非常熟悉,则不必使用【Variables】变量对话框来剪贴插入变量,读者可以直接在图66所示的正文输入框中直接输入变量的名称。2. 引用变量和查询指定设计按钮中变量的值在Authorware中,变量的值是随着程序的执行随时改变的,因此,在程序的不同地方,变量的值有可能不同。在Authorware中,有很多变量允许用户在一个程序的不同的地方查阅某个设计按钮中该变量的值。我们称这样的变量为引用变量。注意:引用变量的格式为:“变量名”“设计按钮标题”。下面,让我们用一个简单的例子来说明引用变量的使用方法。该实例的内容是:使用EntryText变量查阅最终用户正文输入响应中输入的正文内容,然后在程序的执行过程中将用户输入的内容在适当的位置重新显示出来。程序的逻辑结构如图68所示。图68程序的逻辑结构 在程序中我们使用了【交互作用】设计按钮中的【正文输入】响应分支结构来读取用户输入的正文,将用户输入的内容存储在系统变量EntryText中,在标题为“回显正文”的【显示】设计按钮中创建一个正文对象,在正文对象中插入系统变量EntryText来显示用户输入的信息,插入的形式为“用户输入的内容为:EntryText“输入”,如图68所示。3. 自定义变量的定义和编辑虽然Authorware提供了跟踪所能想象的任何事件的变量,但在很多时候,读者还是希望创建自己的变量来跟踪某一特定的内容。例如:在创建要求用户输入姓名、学号的一个交互性对话时,用户可以使用Authorware提供的Username来跟踪用户姓名,但你还要创建一个变量来跟踪用户的学号。在Authorware中,有两种自定义变量的方法:方法一:使用新建变量对话框来自定义变量。如果读者在运算对话框、展示窗口或对话框的一个区域中输入了系统不认识的变量,则系统将打开如图69所示的新建变量对话框。图69新建变量对话框当新建变量对话框打开后,用户需要在对话框中输入以下内容:(1)【Name】:变量名称正文输入框:该区域显示的是Autorware不认识的变量的名字,在该正文输入框中,我们要输入待定义变量的一个具有描述性的名字。例如UserID,该名字能表达实际的含义,意思是用户的ID号。而象“a”或“x1”等都不是好的变量命名。(2)【Initial Value】:初始值正文输入框:该正文输入框是可选的。使用该正文输入框可以为用户所定义的变量设置初始值。程序每次开始运行该模块时都将该正文输入框中的值如同给Authorware系统变量赋值一样赋给用户变量。(3)【Dispriction】:描述性文本区域:该输入框也是可选的。由于该区域是可选的,所以经常被编程人员所忽略。事实上,该区域在程序的设计过程中是非常重要的。在程序设计的初期,创建这些变量的程序设计者可能非常熟悉各变量的含义和使用方法,但是设计者会发现,程序开发小组中的其它开发人员,甚至是创建变量的开发者自己,在创建变量的几个月后都不再明白变量的含义和最初创建该变量的目的。所以,为了程序开发有序性和便于今后理解和使用自定义变量,请读者在该区域中尽可能地加以描述。注意:关于自定义变量的数目,在Authorware中是没有限制的。但是,在程序的开发过程中,笔者建议读者尽可能地限制自定义变量的数目。变量越少,应用程序越容易维护。方法二:使用【Variables】变量对话框来自定义变量。在运算对话框、展示窗口或对话框的一个区域中输入系统不认识的变量之前,我们可以使用【Variables】变量对话框(如图610)来预先定义一个自定义变量。 图610【Variables】变量对话框具体的步骤如下:(1) 在【Catagory】变量类型列表中选择图示的文件名,该文件名表示所要定义的变量属于所选择的文件。 图611 新建变量对话框(2) 单击【Variables】变量对话框中的【New】命令按钮,弹出新建变量对话框,如图611所示。(3) 依照方法一,在新建变量对话框中输入如图611所示的内容。 图612设置新变量后的结果(4) 单击【OK】命令按钮结束新变量的设置,结果如图612所示。(5) 读者可以使用图612中相应的命令按钮来修改所设定的变量。【Rename】命令按钮:单击该命令按钮,弹出图613所示的【Rename Variable】对话框,在该对话框中来修改变量的名称。 图613 更改变量名【Delete】:删除命令按钮:单击该命令按钮,删除在变量名列表中选择的自定义变量。(6) 直接在该对话框中设置变量的初始值和观察变量的当前值。(7) 单击该对话框中的【Done】命令按钮结束对新变量的定义。则新定义的变量就可以在Authorware的程序中使用了。注意:在【Variables】变量对话框中,Authorware所提供的系统变量在该对话框中是不能修改和删除的。只要用户自定义的变量才可以使用修改和删除命令。技巧:【Variables】变量对话框在调试有大量变量的应用程序时是非常有帮助的。我们可以通过使用该对话框来监测变量值的变化。4. 变量的赋值变量最重要的作用是存储信息,所以我们要经常为变量赋值,正如读者所了解的,每一个程序模块运行时,Authorware为许多变量都赋了一个初值。对变量赋初值,我们按照下面的步骤来进行:(1) 打开【运算】设计按钮对话框。(2) 首先输入要赋值的变量名。例如我们要为学生的学号来赋值,则首先在【运算】设计按钮对话框中输入变量名UserID。(3) 然后输入冒号和等号(:=)。注意:Authorware要求在赋值时使用一个冒号然后加一个等号,但在实际的操作中,读者可以直接使用等号,Authorware在关闭运算设计按钮对话框时,会自动为读者加上一个冒号。(4) 在等号后输入你想赋给变量的值。对于所赋给变量的值有如下格式: 字面常量:将所赋的值放在引号内,变量精确地等于你所输入的值。例如:为变量UserID赋给精确的值964674,如图614所示。图614 引号内的精确值赋给变量 变量:将一个变量的值赋给另一个变量:例如为了获取用户在正文输入响应中输入的内容,我们可以使用EntryText系统变量为变量UserID赋值,如图615所示。图615 变量间赋值图616 将表达式的值赋给变量 表达式:将一个表达式的值赋给变量:例如:要将用户在交互响应的正文输入响应中输入的学号全部更换为大字母的名字,我们可以使用EntryText变量和UpperCase函数来实现,如图616所示。前面我们学习了变量的定义和一般使用步骤,下面我们将以实例来分别介绍系统变量在程序设计中的实际应用,这些实例分别隶属于系统变量的九大类。对每一类系统变量我们分别以一个实例来学习该类变量的使用方法,目的是让读者通过这些实例的分析,并结合附录中系统变量的介绍来体会变量在程序设计中的作用,并掌握变量在程序设计中的使用技巧。变量是Authorware所提供的编程中强大的辅助工具,仅仅使用Authorware提供的设计按钮来设计多媒体作品是远远不能满足需要的,所以我们需要大量地使用变量来完成某些特殊的操作和实现特定的功能。能够使用Authorware提供的设计按钮来进行程序设计仅仅是初级的要求,对于真正的Authorware程序设计人员,必须对Authorware所提供的系统变量有比较熟练的掌握,能够灵活地运用这些变量来设计丰富的多媒体作品。只有熟练地掌握变量的使用方法才能进入Authorware编程的新天地。希望读者在下面的学习中仔细体会各系统变量的使用技巧和应用方法与范围。实例一:Decision类,Pathcount和Repcount变量:本实例是利用Pathcount来存储当前【判定】分支结构中反馈分支的总个数,Repcount用了存储所执行的反馈分支的次数。使用这两个变量,我们可以计算出在该【判定】分支结构中,Authorware退出该分支结构之前运行的反馈分支占分支总数的百分比。程序的逻辑结构如图617所示。要实现这种任务,我们需在分支结构的【运算】设计按钮中输入如下内容: 图617 实例一程序逻辑结构这里的PercentComplete为一个自定义变量,使用该变量来存储Athorware所执行过的分支结构反馈分支占反馈分支总个数的百分比。我们可以在图617所示的“显示比例”【显示】设计按钮正文对象中插入该变量来显示百分比。实例二:File类:FileLocation变量FileLocation变量包含运行程序模块所在的路径。例如:读者所执行的程序模块路径为:“D:authorwaretestexamp618.a4p”,则FileLocation变量中存储的就是“D:authorwaretest”。该实例的内容是将用户输入的用户名(UserName变量)、日期和成绩写入与所执行的程序模块在同样路径的StudentData.txt文件中。在程序的【运算】设计按钮中输入的内容如图618所示:我们利用WriteExtFile(filename, string)函数将用户输入的信息写入文件中:图618 实例二的程序设计WriteExtFile(FileLocationStudentdata.txt, UserNametabDatetabScore)提示:在该函数中,符号“”表示将该符号前面和后面的字符串连接起来,我们将在后面学习Authorware支持的运算符号。提示:“tab”键为该学生的各个信息之间在写入文件时提供一个间距。实例三:Framework类,CurrentPageID变量:CurrentPageID变量是一个数值型变量,用于存储当前显示页的设计按钮ID标识;我们可以使用其引用变量来存储指定页的设计按钮ID标识。本实例中,我们使用CurrentPageID变量存储的值来标记框架结构中的页,以便于在今后的程序运行过程中返回这些页,被标记的页的标识号存储在bookmark列表中,程序的逻辑结构如图619所示: 图619 实例三程序逻辑结构在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变量: ClickYClickX当用户最后单击鼠标按钮时,ClickX包含从展示窗口左侧边框到鼠标点的位置的像素数,ClickY包含从展示窗口上侧边框到鼠标点的位置的像素数,如图620所示。图620 变量值的实际含义鼠标点其中图620中的黑色边框为展示窗口。使用该变量,我们可以在游戏的制作中将一个大的区域划分为许多小的区域,并可以确定用户在哪一个区域中敲击了鼠标。从而,确定程序的运行方式。具体的划分区域的方法如图621中的【运算】设计按钮对话框中的内容。 图621用ClickX和ClickY去发现用户最后单击鼠标的位置使用该对话框,我们可以将展示窗口划分为20个像素宽的正方形小方格,当用户单击了鼠标后,我们就可以知道用户单击鼠标在方格中的位置。实例五:Graphics类:Layer变量:Layer变量用于存储当前(或指定的)【显示】设计按钮、【交互作用】设计按钮、【数字化电影】设计按钮所处的层数。在该实例中,我们在程序中插入一个数字化电影,使用Layer变量的引用变量来设置数字化电影的层级别,使数字化电影的每一帧图像必须位于“背景”【显示】设计按钮中显示对象的前面。为了实现该特殊要求,操作步骤如下:(1) 选择数字化电影设计按钮,使其高亮。(2) 执行Authorware所提供的【Modify】菜单中【Icon】子菜单的【Properties】命令(快捷键为Ctrl+I),或者用鼠标双击该【数字化电影】设计按钮,弹出图622所示的【数字化电影】属性对话框。 图622 设置【数字化电影】层的级别(设置层间相互关系)(3) 在该对话框的【Layer】正文输入框中输入: Layer背景+1(4) 单击【OK】命令按钮结束设置。使用这种设置,当程序运行时,数字化电影所播放的每一帧都在“背景”【显示】设计按钮中所显示对象的前面。实例六:Icons类,DisplayX和DisplayY变量:这两个变量存储的是特定设计按钮内显示对象的中心与展示窗口边框的距离。DisplayX变量存储的是显示对象中心与展示窗口左边框的距离,以像素点为单位;DisplayY变量存储的是显示对象中心与展示窗口上边框的距离,以像素点为单位。 图623程序的逻辑结构 图624在正文对象中插入引用变量程序的逻辑结构如图623所示。在该实例中,我们在“Circle”【显示】设计按钮中绘制一个填充为蓝色的圆,设置该圆可以在一定区域中移动(使用【In Aera】选项),然后设置一个【等待】设计按钮,给用户一个能移动圆的时间,在“圆在展示窗口的位置坐标”【显示】设计按钮中输入正文对象,在正文对象中插入引用变量。如图624所示。程序的运行结果是:当用户移动圆到不同的位置时,在展示窗口的左上角将出现对象最终显示位置的坐标。程序的运行结果如图625所示。图625程序的运行结果实例七:Interaction类,EntryText变量:EntryText变量存储的是最后在文本输入对话框中用户输入的文本。读者在创建一个文本输入对话框时,为了获得用户在文本输入对话框中输入的内容,需要使用该变量。该实例是让用户从一个交互作用的文本输入响应类型上输入姓名和学号,然后程序读取用户的学号和姓名,再将姓名和学号显示在展示窗口中。程序的逻辑结构如图626所示。 图626 程序的逻辑结构使用【交互作用】分支结构的正文输入响应让用户输入相应的内容。【运算】设计按钮中使用EntryText变量将用户输入的内容赋给相应的变量。如:Username等。【运算】设计按钮对话框中输入的内容如图627所示。在该对话框中我们输入UserName:=EntryText 同样,在下一个【运算】设计按钮中输入如下内容:UserID:=EntryText然后在“回显”【显示】设计按钮中显示用户输入的内容。图627 【运算】设计按钮中的输入内容实例八:Time类,FullDate变量:该变量存储的是计算机系统当前的日期,其格式1998年9月29日。要在应用程序的演示过程中显示计算机系统当前的日期,则可以在正文输入对象中插入变量FullDate。实例九:Video类,VideoDone变量:VideoDone变量是一个逻辑型的变量,该变量有两种值,一种是TRUE,另一种是FALSE。在当前的视频信息播放结束时,该值为TRUE。为了在程序执行到另一个设计按钮之前完成某个视频信息的播放,可以设置一个判定分支结构,并在图628所示的对话框中的【Until TRUE】正文输入框中输入VideoDone。例如,要使某个视频信息播放完毕后,立刻播放另一段视频信息,则可以在图示的对话框中进行设置。图628 VideoDone使用实例除了上面读者所学习的九大类中的九个变量的实例外,在下面请读者熟悉笔者在工作中经常使用的几个变量。(1) ChoiceNumber:Authorware中的系统变量ChoiceNumber存储的是当前交互循环中用户匹配的最后响应的编号,响应路径从【交互作用】设计按钮的左边至右边依次编号,编号从1号开始。我们可以使用该变量来判定是否要显示特定的反馈。例如,如果用户匹配的响应是交互作用中的前三个响应中的任意一个,那么程序将快放这三个反馈分支中的内容。否则,以正常速度播放,如图629所示,条件响应的类型可以设置为表达式:ChoiceNumber4。 图629ChoiceNumber在条件响应中的使用注意:在程序中,我们要随时跟踪ChoiceNumber的使用位置,如果在交互分支结构中,增加或减少了路径的个数,则需要对表达式进行修改(2) HotTextClicked:当用户用单击或双击作为触发条件来敲击文本的触发器时,HotTextClicked存储用户单击或双击触发的敲击文本。使用该变量可以为读者作品中的目录创建超级链接。当用户单击热文本时,可以使用【导航】设计按钮在框架结构中查找每一页上的关键词是否为HotTextClicked所存储的值,如果找到该值,则程序模块就跳转到该页中去执行相应的内容。(3) IconID: IconID变量存储的是特定设计按钮的唯一的数字标识符。当【导航】设计按钮与一个【运算】设计按钮一起使用时,该变量具有决定性的意义。该变量还可以连接其它的变量和函数。例如读者可以使用【擦除】设计按钮来擦除基于该变量值的一个设计按钮中的对象。使用方法如图630所示。 图630 使用IconID命令返回设计按钮的ID标识(4) LastLineClicked:LastLineClicked存储的是用户单击一个文本对象的某一行的行号。行是用回车符定义的。读者可以利用该变量的特性,来创建一个书签系统。当用户单击一个书签名列表中的某一行文本时,Authorware利用该变量来识别单击的是哪一行。然后,我们可以通过所在行数来得到其它相关的信息,从而,执行与该行有关的双击按钮。(5) TimeOutLimit:在程序跳转到由系统函数TimeOutGoTo指定的设计按钮之前,TimeOutLimit以秒为单位来标志模块等待用户某种类型活动的时间量。在演示会和展览会上,我们可以用该变量来控制系统空闲多长时间。一旦控制时间到,程序将跳至指定的双击按钮来执行该设计按钮中的内容。如图613所示。* 图631 TimeOutLimit控制系统空闲时间 Authorware提供的系统函数Authorware提供的变量是用来存储模块信息,Authorware所提供的函数是用来完成特定的任务。函数使用的位置是:1【运算】设计按钮的对话框中。2作为设计按钮的装饰。3. 用于对话框的相关项的设置。通过使用Authorware所提供的系统函数,读者可以设计基于终端用户交互时获取的信息来进行判断调用的程序模块。这样,在终端用户和计算机之间便形成了人机的对话的环境。函数类型列表函数名列表描述窗口使用当前被选函数的设计按钮列表列表框中选中的设计按钮将在流程线上高亮显示使用【Window】菜单中的【Functions】命令选项(快捷键为Ctrl+Shift+F),弹出图632所示的Authorware的【Function】函数对话框。该对话框中的相关内容在下面我们将系统地学习。 图632 【Functions】函数对话框(1)【Category】:函数类型列表:在该下拉列表(如图633)中是Authorware所提供的系统函数和读者自定义的函数类型的列表。Authorware函数分为19种类型,读者在使用函数时,最好能知道函数所属的类,如果能知道函数所属的类。则我们可以快捷地使用函数类型列表,从该类函数的函数名列表中我们可以迅速地寻找到所需的Authorware函数的位置。下面请读者来学习Autorware提供的所有系统函数的类型:a.【Character】:字符管理函数:这些Authorware所提供的函数主要是用来处理文本内容及字符串的处理。b.【File】:文件管理函数:这些Authorware所提供的函数能使读者可以方便地创建和维护外部文件。c.【Framework】:框架管理函数:这些函数使读者可以实现在框架结构内部的某些特定功能,例如在框架结构内实施一个对某一关键词的查找等特定功能。d.【General】:一般目的函数:这些函数执行一些系统普通级的任务。例如删除一个显示对象,播放媒体信息等等。e.【Graphic】:绘图函数:这些函数决定显示的对象如何在展示窗口中显示。例如在展示窗口画方框或圆。并为方框或圆设置填充模式和颜色。f.【Icons】:设计按钮管理函数:利用这些函数来管理流程线上的设计按钮。例如使用这类函数显示或删除设计按钮或在一个【显示】设计按钮中改变一个显示对象所处的层级别。 图633函数类型下拉列表g.【Jump】:跳转控制函数:跳转函数不仅能够从一个设计按钮跳转到另一个设计按钮中,而且还能够跳转到一个外部文件中。例如我们可以设置:当最终用户在一定时间内没有反应时,Authorware程序跳转去执行某一特殊的设计按钮中的内容,或跳转执行某一特定的外部程序模块,以便实现特殊的自动演示功能。h.【Language】:编程语言函数:Authorware提供的这些函数用来执行特殊的语言编程操作。例如If-Then 语句、Repeat While等语句。i.【List】:列表函数(该类函数是Autorware4.0新增的函数类型):使用该类函数,可以对相关对象按照一定的规则排序,或按照特定的规则建立索引。j【Math】:数学运算函数:这些函数能完成复杂的数学运算,从简单的加法到随机数的生成。Autorware可以执行大多数我们所需要的数学运算。k【Network】:网络管理函数:对于要在国际互联网上运行的模块,我们使用这类函数来实现某些特定的功能。例如:访问外部文件,或从网络上下载内容到本地硬盘上,都是通过使用该类函数来实现的。l【OLE】:OLE管理函数:OLE处理函数用来处理展示窗口中的OLE对象。Authorware 4.0支持所有标准的OLE通信。m【Platform】:平台管理函数:平台管理函数用来获取以后XCMDS或DLL要使用的信息。例如一个平台函数将返回发生器类型,以便确定Authorware当前是否在执行应用程序。n【Time】:时间管理函数:该类函数根据不同的规则将日期转化为数字格式,方便我们的程序设计中对日期的比较,或者显示系统的日期和时间。o【Video】:视频管理函数:该类函数用来管理程序设计中引入的视频,包括视频的播放、暂停、寻找特定帧等等对视频内容进行操作的特殊功能。该类函数详细使用方法参见【视频的引入】中视频函数的使用。p【Xtras】:Xtras函数:该类函数可以控制和使用Xtras文件,或者获取Xtras文件的相关信息。q【Xtra ActiveX】:ActiveX控件函数;r【Xtra Fileio】:Xtra文件输入输出控制函数。除了上面我们学习的19大类函数外,还有其它两个选项:【All】全部:选择该选项,则在函数名列表中按照字母顺序显示Authorware所提供的所有的系统函数的名称。定制:定制函数类型列表是以读者所开发的程序模块文件名为标志。选择该类型选项,在函数名列表中将显示所有用户自己创建的和使用的XCMs(Macintosh)或DLL(Windows)生成的所有函数。(2) 函数名列表:一旦读者选定了某种函数类型,则在类型菜单下面的列表框中的内容就变成该类函数的所有函数名的列表。读者可以在该显示框中选择函数,单击一个函数名,【Functions】函数对话框中的相关内容会相应改变。(3) 【Referenced By】:引用:一旦读者选定了函数后,在引用区域显示框中将显示所有使用该函数的设计按钮。(4) 【Show Icon】:显示设计按钮命令按钮:单击该命令按钮,使用读者所选中函数的设计按钮在流程线上高亮显示。提示:双击函数名列表中的该函数,可以达到同显示设计按钮命令按钮相同的功能。(5) 【Description】:描述窗口:在该窗口中具体描述了函数的语法规则和参数含义,为读者使用该函数提供了详细的步骤。(6) 【Load】命令按钮:单击该命令按钮,使读者可以定位及输入外部函数。这些外部函数可以是CMs(Macintosh)、DLL或UCD(Windows),或者其它包含用户自行设计的代码的应用程序。(7) 【Rename】命令按钮:使用该命令按钮,读者可以修改在函数名列表中选择的函数。注意:对于Authorware所提供的系统函数来说,该命令按钮无效,该命令按钮只能修改用户自定义的函数。(8) 【unload】:卸载命令按钮:当一个用户自定义的函数在程序模块中的任何一个地方都不再使用时,读者可以卸载或删除它,要删除一个不再使用的自定义函数,只需在函数名列表中选择该函数,然后单击【Delete】删除命令按钮来删除该函数即可。(9) 【Paste】粘贴命令按钮:同变量的粘贴命令按钮相同,读者可以使用该命令按钮将函数名列表中选中的函数粘贴到打开的【运算】设计按钮对话框或可以接受函数的区域或外部对象中。当一个函数被粘贴到应用位置时,它包含了为确保函数能够正确运行所需的所有域的占位符。前面我们学习了Authorware【Functions】对话框中相关选项的含义和使用方法,在今后的学习中,我们还要使用到该对话框来实现特殊的功能。而且,在程序的调试过程中,【Functions】函数对话框同【Variables】变量对话框一样,可以作为一个独立的浮动窗口出现在Windows窗口上,读者可以随时通过该对话框来了解自己所使用的函数语法的正确性。从而,可以加快程序的设计和调试。* 函数的参数和返回值函数是具有特殊的语法规则,用来实现特定任务的程序。所以,当我们使用一个函数时,必须要遵循正确的语法规则。在语法规则中最重要的是要正确地使用参数,函数的参数是读者提供给函数为完成某一特定任务所需要的输入信息。几乎所有的系统函数都需要输入参数。在Authorware所提供的众多函数中,参数的使用和函数的返回值的类型有很大的差别。1. 参数的类型首先,让我们来介绍一下参数的类型:(1) 带双引号的参数:如果将字符串作为一个函数的一个参数,则在输入该字符串作为参数时,必须为该字符串加上双引号。例如函数PressKey(keyname),如果我们希望设置该按键为字符串Enter,则我们在使用该函数的时候,要为字符串Enter加上一个双引号,使用实例为:PressKey(Enter);如果我们用一个变量Keyname来代替字符串Enter,即Keyname=“Enter”,则我们在使用该函数时,变量不能再加双引号,应该设成PressKey (Keyname),否则Authorware会错将该变量名作为字符串对待。(2) 任选项参数:在Authorware的系统函数中,有许多函数带有几个参数,而在实际的使用过程中,函数的有些参数不一定每一个都必须使用,而是根据实际任务的情况选用不同的参数。例如:JumpFile(filename, variable1, variable2, ., folder)函数是一个具有任选项参数的函数。使用该函数有两种语法规则:JumpFile(filename)JumpFile(filename, variable1, variable2, ., folder)如果Authorware的程序仅仅是从一个应用模块跳转到另一个应用模块(如examp1.a4p)。则可以使用第一种语法,该函数设置为JumpFile(“examp1”)。如果在examp1.a4p文件中有两个变量与variable1和variable2同名,现在要将另外两个值(如Username和UserID)传递给这两个参数,则可以使用第二种语法方式。该函数设置为:JumpFile(examp1, Username,UserID)。2. 函数的返回值在Authorware所提供的系统函数中,有些有返回值,而有些函数是没有任何返回值。有返回值的函数占大多数。例如:Beep( )函数只是实现一个响铃的功能,所以没有任何返回值。GetLine(string, n , m, delim)函数的返回值是一个字符串。* 函数的使用位置和使用方法在【运算】设计按钮对话框中插入函数: 图634 在运算对话框中选择插入函数的位置在流程线上的【运算】设计按钮对话框中我们可以插入函数,具体的步骤如下:(1) 在【运算】设计按钮对话框中现在要插入函数的位置,如图634所示。用鼠标单击对话框中要插入函数的位置,光标在该位置闪烁,表示处在等待插入的状态。(2) 使用Authorware中的【Window】菜单中的【Functions】命令选项(快捷键为Ctrl+Shift+F),弹出Authorware的【Functions】函数对话框。 图635 插入函数后的【运算】设计按钮对话框(3) 在函数类型列表中选择要插入函数所属的函数类型,如果不知道函数的类

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论