最后举个处理事件的例子,处理一个Flash Xtras发出的事件。在Flash中做好一个
图片,转化为一个按纽,右键选择【Property】,在Actions下的下拉菜单里选get url,在Url对话框内输入一个地址,如:http://www.ustc.edu.cn/。输出为
swf文件。在Authorware中引入此Flash文件,在紧接着的流程线上加一个交互图标,交互类型设为Event。双击打开Event响应的属性对话框,将事件发生器(sender)设为前面的flash
动画,getURL作为事件名称。在事件响应的下面加入你对事件的回应,这里是直接跳转到一个URL指定的Web页。Authorware中对事件传递的格式大体如下:
[#__Sender:9085472, #__SenderXtraName:"Xtra Shockwave Flash Movie", #__SenderIconId:65543, #__EventName:#getURL, #__NumArgs:1, #urlString: "http://www.ustc.edu.cn"]
EventLastMatched得到的是一个属性表,从属性表中获得数据要做的是:
A. index:=FindProperty(EventLastMatched,#urlString)
来得到要使用的属性在属性表中的位置。
B. file:///C:/WINDOWS/TEMP/=ValueAtIndex(EventLastMatched,index)
根据查找出来的属性位置得到属性的值,将值存储到变量中。
C. 据得到的属性,对事件作相应的处理,如:在一个网络发布的程序中,可以跳转到一个页面,用Gotonetpage(url)来实现。此函数在本地发行的情况下自动失效。
Scripting Xtras有三个概念:全局函数,父对象和子对象。全局函数和
系统标准函数看上去没什么两样的,所不同的仅仅是它由Scripting Xtras提供。父对象和子对象的关系就象
模板(Model
Palette)上的图标和流程线上的图标的关系差不多。子对象是父对象的一个独立的例程,拥有它自己的属性和行为。使用对象完成相应的功能要通过调用对象的方法来实现。常用到的调用父子对象方法的函数有: NewObject(创建子对象),CallObject(调用一个子对象), CallParentObject(调用父对象), 和DeleteObject(删除子对象)。判别一个Xtras函数到底是全局函数还是父子对象的方法,在Fuction中选择该函数,看它下面的Description ,如果是父对象方法的,Description中的使用方法会是 CallParentObject打头的,同样子对象方法以CallObject打头,全局函数则与标准系统函数的描述没有什么不同。