变量、函数和表达式的使用(二)_课件制作
变量有两种,一种是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为许多变量都赋了一个初值。
&nb
sp; 对变量赋初值,我们按照下面的步骤来进行:
(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编程的新天地。希望读者在下面的学习中仔细体会各系统变量的使用技巧和应用方法与范围。