主题:  【Authorware√插件函数】

魔岩

职务:版主
等级:6
金币:34.0
发贴:4453
注册:2004/1/13 10:53:31
#12002/8/2 8:49:39
开办本贴的意图:

Authorware 虽然流程设计简单方便,功能强大,可也是有所能有所不能,值得庆幸的是MM公司提供了扩展函数的接口让更多的程序设计员来开发第三方扩展函数(包括U32、XTRAS、OCX 等),丰富AW的其它功能。本贴开办的意图就是让广大的AW爱好者了解更多关于外部扩展函数的知识,包括开发、使用、函数功能等信息。

欢迎大家转载或者发表原创文章,转载的时候请注明出处或者原作者相关版权信息!

编辑历史:[这消息被Rock编辑过(编辑时间2002-08-02 08:57:47)]
[这消息被Rock编辑过(编辑时间2002-08-02 08:58:10)]
[这消息被Rock编辑过(编辑时间2002-08-02 09:04:36)]
[这消息被Rock编辑过(编辑时间2002-08-02 09:05:44)]
[这消息被Rock编辑过(编辑时间2002-08-02 09:06:02)]
[这消息被Rock编辑过(编辑时间2002-08-06 14:08:40)]
[这消息被Rock编辑过(编辑时间2003-07-25 11:17:25)]
[这消息被Rock编辑过(编辑时间2003-07-25 11:23:29)]


魔岩

职务:版主
等级:6
金币:34.0
发贴:4453
注册:2004/1/13 10:53:31
#22002/8/2 8:55:30
在Authorware中灵活运用提示文本

Rock Studio 魔岩工作室 版权所有

程序界面的开发设计中很重要的一个要求就是简单易用,美观友善。很多应用程序中都会在各种场合下用到弹出式工具提示,这样做的目的很明显:给应用者一个明确提示,增加应用程序的友好程度。Authorware做出来的多媒体程序界面美观性和友好性是不容质疑的,在Authorware中实现弹出式文本提示的通常做法是用热区的“Cursor in Area”响应,当鼠标一移动到目标区域上的时候,就自动弹出一个文本提示,这里的文本提示其实是一个事先作好的图片或者是包含提示文本的图片图标对象。这样一来问题产生了,如果在多媒体程序中需要用到很多的文本提示,那不是要创建很多的提示文本图片或者图片图标?下面介绍一个很好用的Authorware外部扩展函数(U32)来解决这个问题。
大家应该还记得Altools.u32这个外部函数,它是国外Apurva Lawale的作品,它支持一些网络功能和系统设置功能,例如探测网络IP地址和本机IP、改变屏幕的分辨率等。现在作者又推出了新作品:alToolTip.u32 For Authorware。这个外部扩展函数目前的最新版本是V1.10,它提供一系列的弹出式工具提示文本相关的设置函数,大大方便了在Authorware多媒体创作中灵活运用弹出式提示文本。让我们一起来认识这个扩展函数吧。
迫不及待,预览一下alToolTip.u32的魅力,先看看运用alToolTip.u32制作的弹出式文本提示的庐山真面目,如下图一所示:

图一 提示文本的预览
由图一可以看出alToolTip.u32函数产生的弹出式工具提示有两种基本样式:标准(矩形)工具提示和“气球式”工具提示。它不但支持多行文本提示,还支持图标功能,极大地满足多媒体创作中弹出式文本提示的制作需要。试想想,如果在一个多媒体程序中需要用到大量的提示文本,而都把它们制作成图片形式然后在Authorware中引用工作量可想而知。AlToolTip.u32到底封装了什么扩展函数呢?看看下面的函数功能列表及简介就知道:
主要功能函数:
1、 提供注册AlToolTip.u32的接口。
alAccessToolTips( "info", "key" )
2、 决定是否显示弹出式文本提示。当activate为“1”则显示,为“0”则不显示。
alActivateToolTip( ID variable name, activate )
3、 彻底地从内存中移除工具提示的使用。
alDestroyToolTip( ID variable name )
4、 为指定区域创建弹出式工具提示。
alMakeToolTip( WindowHandle, x1, y1, x2, y2, message, tooltip width, show balloon )
5、 在工具提示文本框中增加一个小图标和文本标题。
alMessageToolTip( ID variable name, value , caption)
6、 设置提示文本框的背景色。
alSetBkColorToolTip( ID variable name, color )
7、 设置提示文本的颜色。
alSetTextColorToolTip( ID variable name, color )
其它功能函数:
1、    显示alToolTip.u32的版权信息。
alAboutToolTip()
2、    探测系统是否支持“气球式”弹出式工具提示。
alBalloon( )
3、    重新设置工具提示文本字体为默认值。
alResetFontToolTip( ID variable name )
4、    允许在程序中改变工具提示文本的字体设置
alSetFontToolTip(ID variable name, "font name", size,underline, bold, italic, strikethrough )
5、    设置提示文本和提示文本框的相关边距。
alSetMarginToolTip( ID variable name, top, left, bottom, right )
6、    设置提示文本的显示时间。
alSetViewTimeToolTip( ID variable name, time )
7、    动态改变提示文本的文本内容值。这个功能Cool吧!
alUpdateTextToolTip( ID variable name, message)
8、    出现颜色选择对话框,如图二所示。
alColorChooseToolTip( )
9、 分离并得到RGB颜色值中的蓝色色彩值。
alGetToolTipBluevalue( color )
10、分离并得到RGB颜色值中的绿色色彩值。
alGetToolTipGreenvalue( color )
11、分离并得到RGB颜色值中的红色色彩值。
alGetToolTipRedvalue( color )

图二 颜色选择对话框
也许Authorware 6. 0的用户会注意到在安装目录下有一个WinCtrls.u32的外部扩展函数,该函数也提供了显示弹出式工具提示的功能,可是比起alToolTip.u32它的功能就简单的多了,WinCtrls.u32只能提供标准式(矩形)工具提示,而alToolTip.u32不但提供了对提示文本的颜色、字体;提示文本框的背景色等的属性设置,还可在提示文本中增加小图标,选择工具提示显示样式(标准式和“气球式”),动态改变提示文本内容等功能,它把弹出式提示文本涉及到的问题都容纳入这个小小的扩展函数库里了,果然是经典啊!
看到这么多功能函数,一定心动了吧?还等什么呢,马上到http://www.apixel.com/ 去下载一个alToolTip.u32来试试拉(具体的下载连接:http://www.apixel.com/Products/alTT.zip ,在下载的Zip压缩包里包含了该扩展函数的帮助文件和两个使用范例文件,我已经把For Authorware 6.0的范例给汉化了,有需要的读者可以点击下载 tooltipCHS.a6p)。需要说明的一点是: AlToolTip.u32并非一个免费u32,在非打包编辑环境下使用没有任何功能限制,可是打包编译后,如果要正常使用那就只有购买注册咯!另外作者还提供了alToolTip.u32的两个Knowledge Object(KO)版本:Authorware v.5 Knowledge Object和Authorware v.6 Knowledge Object,它们都可以在http://www.apixel.com/下载到,KO版本的设置界面如下图三所示:

图三 KO版本的设置界面

编辑历史:[这消息被Rock编辑过(编辑时间2003-07-09 10:36:37)]
[这消息被Rock编辑过(编辑时间2003-07-09 10:38:41)]


魔岩

职务:版主
等级:6
金币:34.0
发贴:4453
注册:2004/1/13 10:53:31
#32002/8/2 8:56:09
strtools.u32 函数中文说明

Rock Studio 魔岩工作室 2002.8.1.

strtools.u32 是一个对字符串进行系列操作的Authorare外部扩展函数,其封装的函数使用说明如下:

Encrypted String := StrEncrypt(Data, Key)
用字符串"Key"来加密字符串"Data",并返回加密字符串"Encrypted String" 。

Decrypted String := StrDecrypt(Data, Key)
用对应加密时的字符串"Key" 对加密的字符串"Data"进行解码。

一般StrEncrypt(Data, Key)与StrDecrypt(Data, Key)都是匹配使用的,例如:
Encrypted := StrEncrypt("魔岩工作室", "hellyun") ----加密字符串"魔岩工作室"
Decrypted :=StrDecrypt(Encrypted, "hellyun") ----解码还原加密字符串"Encrypted"

Line Number := StrFindLine(String, Search)
在文本"String"中搜索与"Search"匹配的字符,并返回第一次匹配正确的文本所在行数号。

Field := StrGetField(Table, Row, Column)
在一个列表(Table)中返回指定行号(Row)和列号(Column)的字符,其中行以回车(Enter)分隔,列以Tab分隔。

New Table := StrSetField(Table, Row, Column, New String)
替换指定行号和列号所在区域的字符串为"New String",并返回整个新列表,其中行以回车(Enter)分隔,列以Tab分隔。

简单范例下载:
 Strtools使用范例11K



魔岩

职务:版主
等级:6
金币:34.0
发贴:4453
注册:2004/1/13 10:53:31
#42002/8/2 9:03:35
整理一下DirectXtras 家族系列扩展XTRAS并简单的列表:

Rock Studio 魔岩工作室

DirectControl Xtra:可对joysticks操纵杆进行控制
DirectCommunication Xtra:与PC串口、并口,传真机、Modem进行通信
DirectConnection Xtra:控制并连接到互联网的扩展
DirectEmail Xtra:发送邮件或者传真
DirectFTP Xtra:基于FTP协议的系列控制(可以自己制作一个FTP 客户端)
DirectImage Xtra:支持导入、输出、捕获、控制(转动、滚动、格式转换等)图象系列操作
DirectOS Xtra:系统的系列API函数等
DirectSMS Xtra:与手机进行通讯(发送短信息等)
DirectSound Xtra:PC声音的控制,包括混合声音,声音音量、频率采样等
DirectTransition Xtra:提供系列转场过渡效果
DirectTransition3D Xtra:提供系列转场过渡效果
DirectTTS Xtra:TTS 应用
XtrAgent Xtra:MS Agent 应用

提供一共13个DirectXtras的最新版本下载包: DirectXtras6.05Mb
想了解更多相关信息,可以访问DirectXtras主页:http://www.directxtras.com/



魔岩

职务:版主
等级:6
金币:34.0
发贴:4453
注册:2004/1/13 10:53:31
#52002/8/2 9:08:06
alTools函数详细介绍[转载自AW爱好者BBS网友schzh原文]

alChangeRes(Width,Height,bitpp,ifreq) (0.1版加入)
改变分辨率(宽,高,颜色位数,刷新频率),其中第四个参数为2.0版增加

result := alGetCurrentDispSet()
获得当前分辨率配置,包含宽、高、色、刷新频率,强烈推荐!!我在自动改变分配率及恢复时就是用它来得到当前刷新频率的,AUTHORWARE中可没有这个变量!!
如我的机器当前"1024x768x32x85"

result := alGetDispSet() (0.1版加入)
获得本机所有可用分辨率设置,如我的机器为
"640x480x8x60\r320x200x8x70\r320x200x8x72\r320x200x8x75\r320x240x8x60\r320x240x8x70\r320x240x8x72\r320x240x8x75\r400x300x8x60\r400x300x8x70\r400x300x8x72\r400x300x8x75\r480x360x8x60\r480x360x8x70\r480x360x8x72\r480x360x8x75\r512x384x8x60\r512x384x8x70\r512x384x8x72\r512x384x8x75\r640x400x8x70\r640x400x8x72\r640x400x8x75\r640x400x8x85\r640x400x8x100\r640x400x8x120\r640x480x8x70\r640x480x8x72\r640x480x8x75\r640x480x8x85\r800x600x8x60\r800x600x8x70\r800x600x8x72\r800x600x8x75\r800x600x8x85\r1024x768x8x60\r1024x768x8x70\r1024x768x8x72\r1024x768x8x75\r1024x768x8x85\r1152x864x8x60\r1152x864x8x70\r1152x864x8x72\r1152x864x8x75\r1152x864x8x85\r1280x1024x8x60\r1280x1024x8x70\r1280x1024x8x72\r1280x1024x8x75\r1600x1200x8x60\r320x200x16x70\r320x200x16x72\r320x200x16x75\r320x240x16x60\r320x240x16x70\r320x240x16x72\r320x240x16x75\r400x300x16x60\r400x300x16x70\r400x300x16x72\r400x300x16x75\r480x360x16x60\r480x360x16x70\r480x360x16x72\r480x360x16x75\r512x384x16x60\r512x384x16x70\r512x384x16x72\r512x384x16x75\r640x400x16x70\........"

result := alGetActiveProcess() (1.0版加入)
获得当前所有正在运行的进程(特别提示:如果想防止你的程序被同时运行多次,如禁止不小心点了两下,很有用哦!!)

alHideTaskBar() (1.0版加入 )
隐藏任务栏

alShowTaskBar() (1.0版加入 )
显示任务栏

result := alGetSysPath() (1.0版加入 )
获得系统文件路径(WINDOWS的目录加SYSTEM或SYSTEM32)

result := alGetWinPath() (1.0版加入 )
获得WINDOWS路径

result = alSetWindowTitle(windowhandle,vartitle) (2.0版加入 )
设置本程序的标题,windowhandle参数可写windowhandle,vartitle为标题

result := alGetCDRomDrive() (0.1版加入)
获得所有可用光驱号

result := alGetNetworkDrive() (1.0版加入)
获得网络驱动器名

result := alGetComputerName() (0.1版加入)
获得计算机名

result := alGetUserName() (0.1版加入)
获得当前用户帐号

result := alInternetDial() (1.0版加入 )
拨号连接Internet,正常返回TRUE

result := alInternetHangup() (1.0版加入 )
断开拨号连接,正常返回TRUE

result : = alPrintTxtFile(filename) (1.0版加入 )
打印文本文件,正常返回TRUE,filename为文件名

result := alGetIPAddr(HostName) (1.0版加入 )
转换DNS域名为IP地址,如result:=alGetIPAddr("www.sohu.com")返回result为"61.135.131.12"

result := alGetHostName() (1.0版加入 )
转换IP地址为DNS域名

result := alGetMidiDevInName() (1.0版加入 )
返回安装的MIDI输入设备名

result := alGetMidiDevOutName() (1.0版加入 )
返回安装的MIDI输出设备名

result := alGetInstalledODBCDrivers() (1.0版加入 )
返回所有安装的ODBC驱动

result = alAddDSN(drivername,arguments) (2.0版加入 )
在控制面板ODBC设置添加一个用户定义DSN

result = alRemoveDSN(drivername,DSNname) (2.0版加入 )
在控制面板ODBC设置移除一个用户定义DSN

alTrackVariable(windowhandle,variablename) (2.0版加入 )
追踪任何变量并弹出消息,不过。。。。

alSetVariable(windowhandle,variablename,variablevalue) (2.0版加入 )
创建临时变量

alAbout() (0.1版加入)
显示版权和版本号



魔岩

职务:版主
等级:6
金币:34.0
发贴:4453
注册:2004/1/13 10:53:31
#62002/8/2 9:10:42
apwkeys中的外部函数说明(小邓)转自http://dengchunzhi.home.chinaren.com/u32.htm

该U32使AW可以识别Windows的一些特殊键,如Alt,Ctrl等。

InstallAPWKeys

语法:InstallAPWKeys()

说明:使用了InstallAPWKeys()这个函数之后,就可以在AW应用程序中控制这些键,具体如下:

Alt------"AltF16"

Shift-----"ShiftF16"

Ctrl-------"CtrlF16"

Caps Lock------"F15"

Num Lock-------"F14"

Scorll Lock------"F13"

RemoveAPWKeys

语法:RemoveAPWKeys()

说明:使用了InstallAPWKeys()这个函数之后,必须使用RemoveAPWKeys()函数将按键还原。

编辑历史:[这消息被Rock编辑过(编辑时间2002-08-02 09:15:03)]


魔岩

职务:版主
等级:6
金币:34.0
发贴:4453
注册:2004/1/13 10:53:31
#72002/8/2 9:11:47
DirectMedia Xtra®用户指南[本文由:JamesYuZhao提供]
介绍
DirectMedia Xtra®是一种Sprite Xtra®。Sprite Xtra®可以用计算图标进行控制,而且属性也可以通过脚本指定,就像Authorware中的内置媒体文件一样。
如果回放的系统允许,DirectMedia Xtra®还支持Microsoft’s DirectDraw® and DirectSound®。它总能够根据机器的不同选择最佳的播放效果,即使显示设置为256色,也能使用高彩色来播放媒体文件。DirectDraw®引擎利用直接写显存的技术增强回放效果。
要建立一个图标,打开INSERT菜单,选择TABULEIRO XTRAS -> DirectMedia Xtra,这时会显示一个DirectMedia Xtra®属性对话框,单击browse file,打开另一个对话框,提示你选择一个媒体文件。它所支持的媒体类型有Mpeg, AVI, Quicktime®, WAV, AIF, MP2 和MIDI。文件可以在本地机器,也可以在局域网上其他计算机上,甚至可以用输入URL链接一个互联网上的文件。选好文件,点击OK,返回属性对话框,文件的长度(时间),尺寸等信息应能正确的显示出来。
你可以预览文件,标注提示点并设置播放选项(工具条,音量,速率,平衡等等),单击OK完成。在流程线上就出现一个名为DirectMedia Xtra的图标,可以重新调整播放的位置和尺寸。
提示点
每一个DirectMedia Xtra可以有最多64个提示点,以毫秒位单位,每一个提示点的名字最多可以使用32个字符。要建立一个提示点就要在属性对话框中预览文件时确定时间,然后选择“ADD”,显示一个窗口定义提示点的名字。如果以后想修改提示点,在列表中双击名字就可以直接编辑了。使用"GOTO"检查提示点的定位,"REMOVE"用来删除一个提示点。

用脚本建立提示点

CallIcon(@"IconName", #addcuepoint, cuepointtime, "cuepointname") - 这个函数建立一个新的提示点,cuepointtime是时间 cuepointname是名字,自动排列顺序。
Example:
CallIcon(@"DirectMedia Xtra", #addcuepoint, 10000, "newcue")

CallIcon(@"IconName", #removecuepoint, cuepointindex) - 删除一个提示点,需要指定提示点的序号。
Example:
CallIcon(@"DirectMedia Xtra", #removecuepoint, 1)

使用提示点

DirectMedia Xtra® 的提示点被用来在回放时几个方面的控制。下面是它的几个属性:

isPastCuePoint(sprite) ---经过的提示点
the mostRecentCuePoint of sprite ---最近的提示点
the cuepointtimes of icon ----指定提示点的时间
the cuepointnames of icon ----指定提示点的名字

当媒体文件播放时,你必须设置一个事件响应以获取提示点,请参考所附带的例子程序。主要步骤是:建立一个“Event”类型的响应,在属性对话框中选择一个“Sender”图标名,再双击“Event Name”框中的“CuePointPassed”事件。这样,每当经过一个新的提示点,就触发这个响应。后面将要介绍的EventLastMatched变量会让你更多地了解这个事件。

Properties 属性

DirectMedia Xtra®所有的属性都可以很方便地在属性对话框中进行设置,这个对话框在你创建图标或者双击该图标时出现。同时,也可以通过脚本进行设置。


Icon Properties 图标属性

file ---被使用的媒体文件的全路径名
例如: result:=GetIconProperty(@"DirectMedia Xtra", #file)
Trace(result)
--“C:\myfile\file.mpg”
SetIconProperty(@"DirectMedia Xtra", #file,”C:\myfile2.mpg”)

title ---媒体文件名,不带路径。这个属性用于在原目录找不到文件的时候。
例如: result:=GetIconProperty(@"DirectMedia Xtra", #title)
Trace(result)
--“file.mpg”
注:基于HTTP的文件链接,DMX不会在启动时自动定位。

showlocatefiledialog --- DirectMedia Xtra在运行时会自动定位媒体文件,如果文件没有找到,使用这个属性可以显示一个指定文件的对话框,否则,就是一片空白。
例如: SetIconProperty(@"DirectMedia Xtra", #showlocatefiledialog,TRUE)

linkedmedialocated --- 这个属性可以自动设置,用来表明媒体文件是否被正确调用。如果属性的值为False,DirectMedia Xtra就不会进行初始化播放。
例如: result:=GetIconProperty(@"DirectMedia Xtra", #linkedmedialocated)
Trace(result)
--“1”

duration --- 媒体文件的持续播放的时间,单位为毫秒。
例如: result:=GetIconProperty(@"DirectMedia Xtra", #duration)
Trace(result)
-- 45200

videowidth --- 媒体文件的播放宽度,单位为像素。
例如: result:=GetIconProperty(@"DirectMedia Xtra", #videowidth)
Trace(result)
-- 352

videoheight ---媒体文件的播放高度,单位为像素
例如: result:=GetIconProperty(@"DirectMedia Xtra", #videoheight)
Trace(result)
-- 240

volume --- 回放音频的音量。值的范围从-100到0(dB即分贝)
例如: result:=GetIconProperty(@"DirectMedia Xtra", #volume)
Trace(result)
-- -10
SetIconProperty(@"DirectMedia Xtra", #volume,0)

balance --- 音频回放平衡,值的范围从-100到100(dB即分贝)
例如: result:=GetIconProperty(@"DirectMedia Xtra", #balance)
Trace(result)
-- -100
SetIconProperty(@"DirectMedia Xtra", #balance,0)

rate --- 回放速率。值的范围从0到200,是原来标准播放速度的百分比例。
例如: result:=GetIconProperty(@"DirectMedia Xtra", #rate)
Trace(result)
-- 100
SetIconProperty(@"DirectMedia Xtra", #rate,80)

cpuboost --- 由于DirectShow®技术要占用比较多的CPU时间,因此DirectMedia Xtra®会使Authorware®的运行变慢。如果你遇到回放缓慢或者断续的情况,可以使用这个属性设置。合法的取值范围是0到95(百分比),一般来说,超过60就可以解决问题了。
例如: SetIconProperty(@"DirectMedia Xtra", #cpuboost,60)

adjustdurationbeforeplayback --- 如果这项属性的值为真,DirectMedia Xtra®就会在开始播放的同时确定媒体文件的可持续播放时间。这是十分必要的,因为对于同一个文件,不同的DirectShow过滤器会报告不同的可持续播放时间。这样一来,当你把一个成品放到另一台机器运行的时候,DirectMedia Xtra®就有可能无法达到指定的提示点,或者它会认为文件还没有播放完。使用这个属性可以保证正常播放,因此你应该在大多数情况下都使用。
例如: SetIconProperty(@"DirectMedia Xtra", #adjustdurationbeforeplayback,1)

hastoolbar --- 指出是否在播放窗口附带一个工具条。值为0(假)或1(真)。
例如: SetIconProperty(@"DirectMedia Xtra", #hastoolbar,1)

loop --- 指出是否自动循环播放文件。值为0(假)或1(真)。
例如: SetIconProperty(@"DirectMedia Xtra", #loop,1)

playsegment --- 指出是否只播放文件的一个片断。值为0(假)或1(真)。
例如: SetIconProperty(@"DirectMedia Xtra", #playsegment,1)

segmentstart --- 指定文件播放的起始时间,单位是毫秒。只在playsegment的值为真时有效。
例如: SetIconProperty(@"DirectMedia Xtra", #segmentstart,10700)

segmentend ---指定文件播放的结束时间,单位是毫秒。只在playsegment的值为真时有效。
例如: SetIconProperty(@"DirectMedia Xtra", #segmentend,45800)

pausedatstart --- 指出是否在打开文件的时候暂停,不播放。值为0(假)或1(真)。
例如: SetIconProperty(@"DirectMedia Xtra", #pausedatstart,1)

cuepointtimes --- 与该图标有关的提示点时间的列表。
例如: result:=GetIconProperty(@"DirectMedia Xtra", #cuepointtimes)
Trace(result)
-- [4500,12300,34650,67321]

cuepointnames ---与该图标有关的提示点名字的列表
例如: result:=GetIconProperty(@"DirectMedia Xtra", #cuepointnames)
Trace(result)
-- ["Cue 1","NewCuePoint","Start Point","Second part"]

Sprite 属性

currenttime --- 媒体文件当前播放位置,单位是毫秒。
例如: result:=GetSpriteProperty(@"DirectMedia Xtra", #currenttime)
Trace(result)
-- 22345

mediabusy --- 表明媒体文件是否正在播放。值为0(假)或1(真)。
例如: result:=GetSpriteProperty(@"DirectMedia Xtra", #mediabusy)
Trace(result)
-- 1

mostrecentcuepoint --- 最后经过的提示点的序号。
例如: result:=GetSpriteProperty(@"DirectMedia Xtra", #mostrecentcuepoint)
Trace(result)
-- 2

Functions --- 函数

DirectMedia Xtra® 提供了几种函数功能,可以用脚本的方式使用来控制媒体文件的回放。

Icon Functions --- 图标函数

CallIcon(@"IconName", #isDirectShowInstalled) --- 返回0(假)或1(真)。用来判断用户机上是否安装了DirectShow®。在正式版中有效。
例如: result:=CallIcon(@"DirectMedia Xtra", #isDirectShowInstalled)
Trace(result)
-- 1

CallIcon(@"IconName", #addcuepoint, cuepointtime, "cuepointname") --- 这个函数可以通过脚本语言建立一个新的提示点,提示点会自动排列顺序。
例如: CallIcon(@"DirectMedia Xtra", #addcuepoint, 10000, "newcue")

CallIcon(@"IconName", #removecuepoint, cuepointindex) --- 这个函数可以把你指定序号的提示点删除。
例如: CallIcon(@"DirectMedia Xtra", #removecuepoint, 1)

CallIcon(@"IconName", #scanfile) --- 当通过脚本语言改变要播放的媒体文件时,这个函数可以确定文件长度和可持续播放时间。它将自动查询文件并改变自身属性。Adjustdurationbeforeplayback也可以用来校对播放时间,我们建议使用这个属性来代替scanfile(),因为它更准确。
例如: CallIcon(@"DirectMedia Xtra", #scanfile)

CallIcon(@"IconName", #register, registration number) --- 在运行时对DirectMedia Xtra®进行注册。这个函数不常用。
例如: CallIcon(@"DirectMedia Xtra", #register,"SERIALNUMBERHERE”)

Sprite 函数

CallSprite(@"IconName", #videoplay) --- 用于开始或是恢复播放媒体文件。通常在调用时会自动播放文件,除非选择了"Paused at Start"(在开始时暂停)
例如: CallSprite(@"DirectMedia Xtra ", #videoplay)

CallSprite(@"IconName", #videopause) --- 暂停播放。
例如: CallSprite(@"DirectMedia Xtra ", #videopause)

CallSprite(@"IconName", #videoseek , time) --- 查找并暂停在指定的时间位置。时间单位是毫秒。
例如: CallSprite(@"DirectMedia Xtra ", #videoseek, 15000)

CallSprite(@"IconName", #videoplaysegment , starttime, endtime) --- 播放文件的一个片断。请注意这个选项实际上限制了对片断以外其他部分的控制,因此应该再用另一个videoplaysegment()定位到其他的时间点上,跳出这个片断。
例如: CallSprite(@"DirectMedia Xtra ", #videoplaysegment, 10000, 20000)
-- the following command pauses the video in time location 30000
CallSprite(@"DirectMedia Xtra ", #videoplaysegment , 30000, 30000)

CallSprite(@"IconName", #isPastCuePoint , cuepointindex) --- 判断指定序号的提示点是否已经经过了。返回值为0(假)或1(真)。
例如: result:=CallSprite(@"DirectMedia Xtra ", #isPastCuePoint, 2)
Trace(result)
--- 1

CallSprite(@"IconName", #setvolume, volume) --- 设置音频回放的音量。赋值范围从-100到0(dB /分贝)。
例如: CallSprite(@"DirectMedia Xtra ", #setvolume , 0)

CallSprite(@"IconName", #getvolume) --- 返回当前音频播放的音量值,单位是dB /分贝。
例如: result:=CallSprite(@"DirectMedia Xtra ", #getvolume)
Trace(result)
-- -20

CallSprite(@"IconName", #setbalance, balance) --- 设置音频回放的平衡。赋值范围从-100到100(dB /分贝)。
例如: CallSprite(@"DirectMedia Xtra ", #setvolume , 0)

CallSprite(@"IconName", #getbalance) ---返回当前音频播放的平衡值,单位是dB /分贝。
例如: result:=CallSprite(@"DirectMedia Xtra ", #getbalance)
Trace(result)
-- -100

CallSprite(@"IconName", #setrate , rate) ---设置播放速率。赋值范围从0到200(%)
例如: CallSprite(@"DirectMedia Xtra ", #setrate , 80)

CallSprite(@"IconName", #getrate) --- 返回当前播放速率,百分比值。
例如: result:=CallSprite(@"DirectMedia Xtra ", #getrate)
Trace(result)
-- 100

CallSprite(@"IconName", #setfulscreen) --- 这个函数利用ActiveMovie/DirectShow实现全屏播放。它的全屏播放方式是完全独立的,无论你的程序是否工作在全屏状态下。在此期间不响应鼠标和键盘事件,因此要利用提示点来返回程序,而且在结束时要使用一次RemoveFullScreen()函数。
例如: CallSprite(@"DirectMedia Xtra ", #setfullscreen)

CallSprite(@"IconName", #removefulscreen) --- 停止ActiveMovie/DirectShow的全屏播放。返回到Authorware的展示窗口。
例如: CallSprite(@"DirectMedia Xtra ", #removefullscreen 1)


Creating Executables --- 建立可执行文件

DirectMedia Xtra® 只能运行在Windows® 95, 98 and Windows NT® 环境。因此,你应该建立Windows® 95 and Windows NT® 的可执行文件。而且还要把DirectMediaXtra.x32文件放到XTRAS文件夹中,和你的可执行文件放在同一个目录下。
最终的文件结构应该像下面这样:

可执行文件 --- C:\myproj\proj.exe
Xtra 文件 --- C:\myproj\Xtras\DirectMediaXtra.x32

DirectMedia Xtra®会自动定位所有在同一目录下的相关媒体文件,或者在searchpath变量中指定的目录中的。但不会从HTTP服务器上查找媒体文件。

编辑历史:[这消息被Rock编辑过(编辑时间2002-08-05 09:50:37)]


魔岩

职务:版主
等级:6
金币:34.0
发贴:4453
注册:2004/1/13 10:53:31
#82002/8/2 9:13:53
TrnspAVI.u32 [网友AW5]
一个可以让AVI背景变透明的外部扩展函数

Result:=TrnspAVIErase()
从屏幕把AVI擦掉,返回值,1为成功,0为失败.

Result:=TrnspAVIPause()
暂停AVI,返回值,1为成功,0为失败.

Result:=TrnspAVIPlay(Filename,Top,Left)
播放AVI,filename为文件名,top,left为左上角坐标.
Note: the color of the pixel in a frame's lower-left corner will be used as the transparent color.你说的透明可能是这句注意的话.

Result:=TrnspAVIPosition()
返回当前帧位置

Result:=TrnspAVISeek(Frame)
设置到第几帧,frame填帧数.




魔岩

职务:版主
等级:6
金币:34.0
发贴:4453
注册:2004/1/13 10:53:31
#92002/8/2 9:14:32
FTP中的外部函数说明[转自http://dengchunzhi.home.chinaren.com/u32.htm]

FtpAbort

语法:status := FtpAbort( ftpID )

说明:放弃当前正在进行的FTP函数的执行。如果返回值为“1”,则由FtpStatus函数来决定操作是否成功。

FtpAppend

语法:status := FtpAppend( ftpID, "remotePath", "localPath" )

说明:将本地磁盘上的文件传送到一个远程服务器上。如果由remotePath定义的文件已经存在,传送的数据会自动追加到文件的尾部;否则,系统在服务器上创建一个新文件。

FtpChangeParentDir

语法:status := FtpChangeParentDir( ftpID )

说明:

FtpChangeWorkingDir

语法:status := FtpChangeWorkingDir( ftpID, "remotePath" )

说明:更改远程服务器上的当前工作目录以实现文件的保存或检索。

FtpClose

语法:status := FtpClose( ftpID )

说明:结束ftpID指定的FPT连接,释放系统资源,fptID句柄不再有效。

FtpConnect

语法:status := FtpConnect( ftpID, "server", "port", "userid", "password" )

说明:通过定义服务器口令、端口号、用户名、口令与FPT服务器建立连接,它成功与否由FtpStatus函数来决定。

FtpDelete

语法:status := FtpDelete( ftpID, "remotePath" )

说明:从服务器上删除指定的文件。如果返回值为“1”,则必须由FtpStatus函数判断操作是否成功。

FtpDisconnect

语法:status := FtpDisconnect( ftpID )

说明:断开一个已被激活的FTP连接。如果返回值为“1”,则必须由FtpStatus函数判断操作是否成功。

FtpGetWorkingDir

语法:status := FtpGetWorkingDir( ftpID )

说明:获得远程服务器上的当前工作目录。

FtpList

语法:status := FtpList( ftpID, "remotePath" )

说明:

FtpMakeDir

语法:status := FtpMakeDir( ftpID, "remotePath" )

说明:

FtpNameList

语法:status := FtpNameList( ftpID, "remotePath" )

说明:

FtpOpen

语法:ftpID := FtpOpen( )

说明:为FTP任务分配和初始化系统资源,该命令是所有FTP函数的入口。如果发生错误,函数返回值为0,否则返回一个句柄。

FtpRemoveDir

语法:status := FtpRemoveDir( ftpID, "remotePath" )

说明:

FtpRename

语法:status := FtpRename( ftpID, "fromName", "toName" )

说明:将远程服务器上的fromName文件更名为toName。

FtpResult

语法:string := FtpResult( ftpID )

说明:返回已完成的FTP函数操作的结果。这个函数应当在每个FTP函数操作完成后被调用。

FtpRetrieve

语法:status := FtpRetrieve( ftpID, "remotePath", "localPath" )

说明:将远程服务器上的文件副本传送到本地硬盘上,服务器端的文件内容和状态不会受到任何影响。

FtpStatus

语法:status := FtpStatus( ftpID )

说明:返回最后一个FTP函数的运行状态,一般常于判断函数操作是否成功。

Status=1 :操作处于等待状态。

Status=0 :操作完成。

Status=-1 :操作发生错误。

FtpStore

语法:status := FtpStore( ftpID, "remotePath", "localPath" )

说明:将本地磁盘上的文件传送到一个远程服务器上。如果由remotePath定义的文件已经存在,传送的数据会覆盖掉源文件中的内容;否则,系统在服务器上创建一个新文件。



魔岩

职务:版主
等级:6
金币:34.0
发贴:4453
注册:2004/1/13 10:53:31
#102002/8/2 9:17:14
ODBC中的外部函数说明[转自http://dengchunzhi.home.chinaren.com/u32.htm]

该U32 提供了在Authorware中控制ODBC外部数据源的三个函数,可以在Authorware中对外部数据库进行操作。

ODBCClose

语法:ODBCClose(ODBCHandle)

说明:该函数将ODBCHandle 指定的ODBC数据源关闭,该ODBCHandle(数据源句柄)由ODBCOpen函数返回。

ODBCExecute

语法:data:= ODBCExecute(ODBCHandle,SQLString)

说明:该函数使用SQLString 参数指定的SQL查询语句对ODBCHandle指定的数据库进行查询操作。该ODBCHandle(数据源句柄)由ODBCOpen函数返回。

ODBCOpen

语法:ODBCHandle:= ODBCOpen(WindowHandle,ErrorVar,Database,User,Password)

说明:该函数打开由参数Database指定的数据源,其中:

WindowHandle 该数据库窗口的句柄,直接输入该参数即可。

ErrorVar 存放该打开数据库函数的执行出错信息。

Database 数据源名称。

User 该数据源的合法使用者名。

Password 与该数据源的合法使用者名对应的密码。



魔岩

职务:版主
等级:6
金币:34.0
发贴:4453
注册:2004/1/13 10:53:31
#112002/8/2 9:18:26
tMsControls.U32的外部函数说明 [转自http://dengchunzhi.home.chinaren.com/u32.htm]

tMsAddItem

语法:Result:=tMsAddItem(ControlHandle, menuItemNo, submenuItemNo, menuText)

说明:在弹出菜单或下拉列表中增加一个选项。参数ControlHandle 为目标控制的句柄,MenuItemNo指定主菜单中选项的插入位置,subMenuItemNo指定子菜单中的插入位置,menuText指定选项的显示文本。

为在主菜单中插入选项,subMenuItemNo应为0。为插入一个分隔栏,menuText应为-

tMsBrowserFolder

语法:Result:=tMsBrowseFolder(windowHandle, Caption, Prompt, StartFolder)

说明:显示一个文件夹浏览对话框,并以字符串形式返回用户所选文件夹的名称(包含路径)。参数windowHandle为当前【演示】窗口的句柄,Caption为对话框标题,Prompt为显示对话框中的提示信息,StartFolder为初始显示的文件夹。

tMsCreateDropList

语法:Result:=tMsCreateDropList(windowHandle)

说明:创建一个下拉列表控制后回该控制的句柄,参数windowHandle同上。

tMsCreateFontList

语法:Result:=tMsCreateFontList(windowHandle, useFont)

说明:创建一个字体选择下拉列表控制后回该控制的句柄,参数windowHandle同上。

tMsCreatePopupList

语法:Result:=tMsCreatePopupList(windowHandle)

说明:创建一个弹出菜单控制后回该控制的句柄,参数windowHandle同上。

tMsDeleteItem

语法:Result:=tMsDeleteItem(ControlHandle, menuItemNo, submenuItemNo)

说明:从弹出菜单或下拉列表中删除一个选项。参数ControlHandle 是目标控制的句柄,MenuItemNo为选项在主菜单中的位置,subMenuItemNo为选项在子菜单中的位置,为从主菜单中删除,subMenuItemNo应为0。

tMsDestroyControl

语法:Result:=tMsDestroyControl(ControlHandle)

说明:撤消指定控制,参数ControlHandle 是目标控制的句柄。

tMsDisplayControl

语法:Result:=tMsDisplayControl(ControlHandle, X, Y, Width, Height, Return)

说明:在指定坐标处显示指定控制。如果该控制是一个弹击菜单,则返回用户的选择,如果为其他类型,则必须使用函数tMsGetItem( )取得用户的选择。参数ControlHandle 是目标控制的句柄,x、y指定该控制左上角的屏幕坐标,Width、Height指定显示宽度和高度,Return指定(及函数tMsGetItem( ))的返回值形式,为0,返回所选选项的序号,不同级别选项的序号间由冒号分隔。为1,返回所选选项的文本,不同级别选项的文本间由冒号分隔。

tMsEraseControl

语法:Result:=tMsEraseControl(ControlHandle)

说明:从当前【演示】窗口删除指定的控制,参数ControlHandle 是目标控制的句柄。与tMsDestroyControl( )的区别在于不撤消指定控制,可随时通过函数tMsDisplayControl( )显示。

tMsGetItem

语法:Result:=tMsGetItem(ControlHandle, menuItemNo, submenuItemNo)

说明:返回控制中指定选项的文本。参数ControlHandle 是目标控制的句柄,MenuItemNo为选项在主菜单中的位置,subMenuItemNo为选项在子菜单中的位置。为从主菜单中返回,subMenuItemNo应为0。对于列表框控制,参数MenuItemNo和subMenuItemNo为0可返回当前所选选项的文本。

tMsOpenImageFile

语法:Result:=tMsOpenImageFile(WindowHandle, Title, StartFolder, defaultName, defaultExt, Filter)

说明:显示一个带有图像预览窗口的打开文件对话框,并返回用户所选文件名(带路径)。参数WindowHandle为当前【演示】窗口的句柄,Title为对话框标题,StartFolder为显示在对话框中的初始文件夹,defaultName为默认打开的文件名(显示在“文件名”文本框中),如果该文件存在,则显示在图像预览窗口中,defaultExt设置默认文件扩展名,Filter指定可用文件类型,是由字符“|”分隔的字符串,格式为:类型1|对应文件扩展名1|类型2|对应文件扩展名2……。

tMsSaveImageFile

语法:Result:=tMsSaveImageFile(WindowHandle, Title, StartFolder, defaultName, defaultExt, Filter)

说明:显示一个带有图像预览窗口的保存文件对话框,并返回用户所选文件名(包含路径)。

tMsSelectItem

语法:Result:=tMsSelectItem(ControlHandle, ItemNo, ItemText)

说明:预定义下拉列表框中的所选项。参数ControlHandle 是目标控制的句柄,ItemNo和ItemText根据选项序号或选项文本指定所选项:如果执行函数tMsDisplayControl( )显示该控制时参数Return为0,则根据ItemNo(选项序号)选择选项;如果Return为1,则根据ItemText(选项文本)选择选项。



魔岩

职务:版主
等级:6
金币:34.0
发贴:4453
注册:2004/1/13 10:53:31
#122002/8/2 9:19:21
a5wmme中文函数说明(小邓) [转自http://dengchunzhi.home.chinaren.com/u32.htm]

此U32中包括了对各种媒体播放的控制函数,这些媒体包括Wave、CD、MIDI、Vdieo等,还提供了一些MCI控制函数,详细如下。

AnimAudio

语法:number:=AnimAudio(state)

说明:指定是否播放当前动画的声音。若参数state为on,表示可以播放。若为off,则表示不播放当前声音。

若该函数调用成功,则返回值为0。若调用失败,则返回错误代码。

AnimClose

语法:number:= AnimClose()

说明:该函数关闭当前的动画文件。若该函数调用成功,则返回值为0。若调用失败,则返回错误代码。

AnimCurrentFrame

语法:number:= AnimCurrentFrame()

说明:该函数返回动画文件的当前播放帧数。若该函数调用失败,则返回值为0。

AnimFrame

语法:number:= AnimFrame()

说明:该函数返回动画文件的总帧数。若该函数调用失败,则返回值为0。

AnimGetDestination

语法:string:= AnimGetDestination()

说明:该函数返回当前动画文件在演示窗口中的位置。

该函数的返回值是一个字符串,格式为“距演示窗口上边界的像素数、距演示窗口左边界的像素数、宽度、高度”。

若该函数调用失败,则返回值为0。

AnimOpen

语法:number:= AnimOpen(filename,windowstyle)

说明:该打开由“filename”指定的动画文件,而参数windowstyle则是以字符串的方式表现动画所播放的窗口属性,主要设定的是这个播放窗口的层次,参照下表:

overlapped棗表示播放窗口是重叠模式。

Popup棗表示播放窗口是浮在所有窗口之上的模式。

caption棗表示播放窗口留有空间给字幕。

nocaption棗表示播放窗口不留空间给字幕。

noframe棗表示播放窗口没有边框。

thinframe棗表示播放窗口的边框是细线。

thickframe棗表示播放窗口的边框是粗线。

maxbox棗表示播放窗口可以最大化显示。

nomaxbox棗表示播放窗口不能最大化显示。

sysmenu棗表示播放窗口有系统菜单。

nosysmenu棗表示播放窗口没有系统菜单。

At 棗表示播放窗口相对于演示窗口的位置(距离演示窗口上边界和左边界的像素数)。

Size 棗表示播放窗口的大小(宽度和高度)。

zoomed棗表示播放窗口一出现就是最大化显示。

usefullcolor棗表示播放窗口能够使用更多的色彩。

若该函数调用成功,则返回值为0。若该函数调用失败,则返回错误代码。

AnimPaletteHandle

语法:string:= AnimPaletteHandle()

说明:该动画返回动画所使用调色板的句柄。若该函数调用失败,则返回句柄为0。

AnimPause

语法:number:= AnimPause()

说明:该函数暂停动画的播映。

若该函数调用成功,则返回值为0。若该函数调用失败,则返回错误代码。

AnimPlay

语法:number:=AnimPlay(speed,wait)

说明:该函数设置动画的播放速度。

若speed参数为100,则表示正常播映,若speed参数为负数,则表示倒放该动画文件;若wait参数为true,表示等动画播映结束后,authorware应用程序才继续执行。

若该函数调用成功,则返回值为0。若该函数调用失败,则返回错误代码。

AnimPlaying

语法:condition:=AnimPlaying

说明:该函数查询目前是否有动画在播映。

AnimPlaySegment

语法:number:= AnimPlaySegment(fromframe,forframe,speed,wait)

说明:该函数指定播放动画的长度,参数fromframe表示开始播映的帧数,从头播映时,可以设此参数值为0;参数forframes表示播放的长度(总帧数);若speed参数为100,则表示正常播映,若speed参数为负数,则表示倒放该动画文件;若wait参数为true,表示等动画播映结束后,authorware应用程序才继续执行。

若该函数调用成功,则返回值为0。若该函数调用失败,则返回错误代码。

AnimResume

语法:number:= AnimResume()

说明:该函数将已暂停的动画继续播放。

若该函数调用成功,则返回值为0。若该函数调用失败,则返回错误代码。

AnimSetCaption

语法:number:= AnimSetCaption(captionstring)

说明:该函数为动画打字幕,将参数captionstring指定的字符串作为字幕显示在动画窗口中。

若该函数调用成功,则返回值为0。若该函数调用失败,则返回错误代码。

AnimSetDestination

语法:number:= AnimSetDestination(top,left,width,height)

说明:该函数设置动画窗口的大小。参数格式为“距演示窗口上边界的像素数、距演示窗口左边界的像素数、宽度、高度”。

AnimShowWindow

语法:number:= AnimShowWindow(state)

说明:该函数显示或者隐藏动画窗口。

若参数state为True,则表示窗口不隐藏。若参数为False,则表示隐藏窗口。

若该函数调用成功,则返回值为0。若调用失败,则返回错误代误。

AnimStop

语法:number:=AnimStop()

说明:该函数停止当前动画的播放。

若该函数调用成功,则返回值为0。若调用失败,则返回错误代误。

AnimWindowHandle

语法:number:= AnimWindowHandle()

说明:该函数当前动画窗口的句柄。

若该函数调用失败,则返回一个空的句柄。

CDPlay

语法:number:=CDPlay(track,wait)

说明:该函数用来播放CD唱片,可以指定播放参数track指定的CD音轨。若参数wait为True,则表示等到动画播映结束后Authorware应用程序才继续执行,否则一开始播放CD音轨Authorware就继续往下执行。

若该函数调用成功,则返回值为0。若调用失败,则返回错误代码。

CDPlaySegment

语法:

number:= CDPlaySegment(track,fromseconds,forseconds,wait)

说明:该函数指定播放的CD的音轨的长度。参数track指定播放的音轨;参数fromseconds指定开始播放的时间位置;参数forseconds指定播放的时间长度,若forseconds为0,则表示播放到该音轨的结尾。若forseconds为-1,则表示播放整个CD唱片。若参数wait为True,则表示等动画播映结束后,Authorware应用程序才继续执行,否则一开始播放CD音轨Authorware就继续往下执行。

若该函数调用成功,则返回值为0。若调用失败,则返回错误代码。

CDStop

语法:number:=CDStop()

说明:该函数停止当前CD音轨的播放。

若该函数调用成功,则返回值为0。若调用失败,则返回错误代码。

CDPause

语法:number:=CDPause()

说明:该函数暂停当前CD音轨的播放。

若该函数调用成功,则返回值为0。若调用失败,则返回错误代码。

CDResume

语法:number:=CDResume()

说明:当使用CDPause暂停当前音乐播放时,使用CDResume可以让音乐继续播放。

若该函数调用成功,则返回值为0。若调用失败,则返回错误代码。

CDPlaying

语法:condition:=CDPlaying

说明:目前是否有CD音轨正在播放,则该函数返回值为True。

CDCurrentPosition

语法:string:= CDCurrentPosition()

说明:该函数查询当前CD音轨播放的时间。

格式为tt:mm:ss:ff。tt表示轨数,mm表示分钟数,ss表示秒数,ff表示帧数。

CDEject

语法:number:=CDEject()

说明:该函数可弹出当前使用的CD光盘机。

若该函数调用成功,则返回值为0。若调用失败,则返回错误代码。

CDRetract

语法:number:= CDRetract ()

说明:当使用CDEject函数弹出当前光盘机后,可以使用CDRetract使光盘托盘收回光盘机中。

若该函数调用成功,则返回值为0。若调用失败,则返回错误代码。

CDDiscPresent

语法:condition:= CDDiscPresent()

说明:若当前光盘机中有CD唱片,则该函数返回值为True,否则返回值为False。

CDLength

语法:number:= CDLength()

说明:该函数可查询所有的CD音轨的歌曲长度。

若该函数调用失败,则返回值为0。

CDTracks

语法:number:= CDTracks()

说明:该函数查询当前CD唱片的音轨数,即的歌曲的数目。

若该函数调用失败,则返回值为0。

CDTrackLength

语法:number:= CDTrackLength(track)

说明:该函数返回track指定音轨的歌曲长度。

若该函数调用失败,则返回值为0。

MCISendString

语法:number:= MCISendString(cmdstring)

说明:该函数向MCI设备发送一个MCI的指令。

若该函数调用成功,则返回值为0。若调用失败,则返回错误代码。可以通过函数MCIGetReturnstring()获得从MCI设备返回的字符串。

MCIGetReturnString

语法:string:= MCIGetReturnString()

说明:该函数获得从MCI设备返回的字符串。

MCIGetErrorString

语法:string:= MCIGetErrorString(errorcode)

说明:当使用MCISendString传送指令后,若有错误无法执行,可以将错误放置在errorcode之中,而本函数以字符形式返回错误代码。

MCIExecute

语法:condition:= MCIExecute(cmdstring)

说明:该函数与MCISendString最大的不同就是返回值,该函数返回的值是一个逻辑值,若为True则表示MCI指令成功,若为 False则表示MCI的指令无法执行。

MCIShowErrors

语法:MCIShowErrors(showerrors)

说明:该函数打开或关闭MCI的错误信息,若showerrors的值为True,则表示打开MCI的错误信息,这样当执行MCI指令出错时会显示错误的信息。

MIDIPlay

语法:number:= MIDIPlay(filename,tempo,wait)

说明:该函数播放参数filename指定的MIDI文件,参数tempo表示播放的节拍,若数值为100则表示正常播放。参数wait的值为一个逻辑值,为True表示声音在播放时,Authorware暂停执行,等MIDI音乐播放结束后再继续;为False则表示当MIDI音乐在播放时,Authorware继续往下执行。

若该函数调用成功,则返回值为0。若调用失败,则返回错误代码。

示例:

MIDIPlay("cat.mid",100,True)

上式表示播放cat.mid这个MIDI文件,以正常的速度播放,并且在播放的同时,暂停其他Authorware命令的执行。

MIDIPlaySegment

语法:number:= MIDIPlaySegment(filename,tempo,fromseconds,forseconds,wait)

说明:该函数播放参数filename指定的MIDI文件,参数tempo表示播放的节拍,若数值为100则表示正常播放。参数fromseconds表示开始播放该MIDI文件的长度位置。参数forseconds表示播放该MIDI文件的时间。参数wait的值为一个逻辑值,为True表示声音在播放时,Authorware暂停执行,等MIDI音乐播放结束后再继续;为False则表示当MIDI音乐在播放时,Authorware继续往下执行。

若该函数调用成功,则返回值为0。若调用失败,则返回错误代码。

MIDIStop

语法:number:= MIDIStop()

说明:该函数停止当前MIDI音乐的播放。

若该函数调用成功,则返回值为0。若调用失败,则返回错误代码。

MIDIPause

语法:number:= MIDIPause()

说明:该函数暂停当前MIDI音乐的播放。

若该函数调用成功,则返回值为0。若调用失败,则返回错误代码。

MIDIResume

语法:number:= MIDIResume()

说明:使用MIDIPause暂停MIDI音乐的播放时MIDIResume可以让MIDI音乐继续播放。

若该函数调用成功,则返回值为0。若调用失败,则返回错误代码。

MIDIPlaying

语法:condition:= MIDIPlaying()

说明:该函数查询目前是否有MIDI音乐在播放,若有则函数的值为True。

WavePlay

语法:number:= wavePlay(filename, wait)

说明:该函数可以播放参数filename指定的wav声音文件,而且可以返回一个数值代表正确或错误,如果播放指定声音文件前尚有其他的音乐正在播放时系统会将其他的音乐关闭,然后再播放此音乐。

参数wait的值为一个逻辑值,为True表示声音在播放时,Authorware暂停执行,等指定WAVE声音文件播放结束后再继续执行;为False则表示当指定WAVE声音文件一开始播放,Authorware立即继续往下执行。

特别要注意的一点是指定的WAVE声音文件必须同时给出后缀,否则会出现错误的信息。

若该函数调用成功,则返回值为0。若调用失败,则返回错误代码。

WavePlaySegment

语法:number:= WavePlaySegment(filename,fromseconds,forseconds,wait)

说明:该函数播放参数filename指定的WAVE声音文件。

参数fromseconds表示开始播放该WAVE文件的长度位置。参数forseconds表示播放该WAVE文件的时间,若为0则表示播放整个声音文件。参数wait的值为一个逻辑值,为True表示声音在播放时,Authorware暂停执行,等WAVE文件播放结束后再继续;为False则表示当WAVE文件在播放时,Authorware继续往下执行。

若该函数调用成功,则返回值为0。若调用失败,则返回错误代码。

WaveStop

语法:number:= WaveStop()

说明:该函数停止当前WAVE声音文件的播放。

若该函数调用成功,则返回值为0。若调用失败,则返回错误代码。

WavePause

语法:number:= WavePause()

说明:该函数暂停当前WAVE声音文件的播放。

若该函数调用成功,则返回值为0。若调用失败,则返回错误代码。

WaveResume

语法:number:= WaveResume()

说明:若当前声音文件已被暂停,可以使用此函数继续播放该WAVE声音文件。

若该函数调用成功,则返回值为0。若调用失败,则返回错误代码。

WavePlaying

语法:condition:= WavePlaying()

说明:该函数检测当前是否正在播放WAVE声音文件,若是则返回值为True,否则返回值为False。



魔岩

职务:版主
等级:6
金币:34.0
发贴:4453
注册:2004/1/13 10:53:31
#132002/8/2 9:20:05
apwmouse中的外部函数说明(小邓) [转自http://dengchunzhi.home.chinaren.com/u32.htm]

该U32可以使鼠标右键或中键具有鼠标左键同样的功能,这样在AW应用程序中,以前只胡按鼠标左键才具有的功能(如对交互的响应等)也可以同时被鼠标右键响应了。

InstallAPWMouse

语法:InstallAPWMouse()

说明:该函数将鼠标右键或中键(如果有的话)设定为与鼠标左键相同的功能,可以单击或双击匹配某一个交互,按住右键也可以拖曳对象了。

LeftButton

语法:status:=LeftButton()

说明:该函数检测鼠标左键的状态,如果使用都按下的是鼠标左键,则该函数的返回值为True,否则为假。

利用此函数可以判定当使用了函数InstallAPWMouse()后,用户窨按下的是左键还是右键。

RemoveAPWMouse

语法:RemoveAPWMouse()

说明:使用过InstallAPWMouse()函数之后,一定要用RemoveAPWMouse()将鼠标右键还砂。否则退出AW应用程序后,在Windows中鼠标右键(或中键)仍将失效。



xie0909_5d

职务:普通成员
等级:1
金币:1.0
发贴:161
注册:2001/5/15 20:43:26
#142002/8/2 10:24:40
[转载]Flash的控制函数
◆ 属性:#actionsEnabled
函数:SetIconProperty(@"IconTitle", #actionsEnabled, boolean)
SetSpriteProperty(@"IconTitle", #actionsEnabled, boolean)
说明:设置Flash动画中按钮的动作是否有效,参数boolean取值为TRUE时,Flash动画中按钮的动作有效,取值FALSE时无效。例如:
If Checked@"MyButton" then
SetSpriteProperty(@"Flash Icon", #actionsEnabled, True)
else
SetSpriteProperty(@"Flash Icon", #actionsEnabled, False)
end if
◆ 属性:#broadcastProps
函数:SetIconProperty(@"IconTitle", #broadcastProps, boolean)
说明:控制当对Sprite图标的属性有改动时,是否立即对Sprite图标的显示产生影响。当参数boolean取值为TRUE时,所有对Sprite图标属性的改动将立即体现在Sprite图标的显示上;当参数boolean取值为FALSE时,对Sprite图标属性的改动将不会立即体现在Sprite图标的显示上,而将体现在下一次执行此Sprite图标时。例如:
SetIconProperty(@"Flash Icon", #viewScale, 200)
SetIconProperty(@"Flash Icon", #broadcastProps, False)
◆ 属性:#bufferSize
函数:SetIconProperty(@"IconTitle", #bufferSize, integer)
说明:对于属性设置为链接的Flash动画,设置一次载入内存的数据流的字节数,参数integer只能取整数,默认值为32768。此函数只在Flash动画的预载入属性(# preload)为假时有效。例如:
SetIconProperty(@"Flash Icon", #preload, False)
SetIconProperty(@"Flash Icon", #bufferSize, 65536)
◆ 属性:#buttonsEnabled
函数:SetIconProperty(@"IconTitle", #buttonsEnabled, boolean)
SetSpriteProperty(@"IconTitle", #buttonsEnabled, boolean)
说明:控制Flash动画中的按钮是否有效,参数boolean的取值可以是TRUE或FALSE。例如:
If ButtonsOn then
SetSpriteProperty(@"Flash Icon", #actionsEnabled, True)
SetSpriteProperty(@"Flash Icon", #buttonsEnabled, True)
end if
注:If ButtonsOn then表示如果变量ButtonsOn为真。
◆ 属性:#bytesStreamed
函数:number:=GetIconProperty(@"IconTitle", #bytesStreamed)
说明:返回指定图标中Flash动画载入到内存的数据的字节数,返回值为整数。例如:
repeat while GetIconProperty(@"Flash Icon", #percentStreamed) < 100
CallIcon(@"Flash Icon", #stream)
Message:="Bytes streamed:"^GetIconProperty(@"Flash Icon",
#bytesStreamed)
end repeat
◆ 属性:#centerRegPoint
函数:SetIconProperty(@"IconTitle", #centerRegPoint, boolean)
说明:控制是否将Flash动画的定位点设置到Flash动画的中心位置,参数boolean的取值为TRUE时,即将Flash动画的定位点始终定在Flash动画的中心位置;参数boolean的取值为FALSE时,即使调整了Flash动画的画面大小,或是更改了Flash动画的#defaultRect属性,定位点都将保持在原位置不变。我们可以通过设置Flash动画的#RegPoint属性来更改定位点的位置,如果用户更改了#RegPoint属性,则#centerRegPoint属性将自动变为FALSE,#centerRegPoint属性的默认值为TRUE。例如:
If GetIconProperty(@"Flash Icon", #centerRegPoint) then
SetIconProperty(@"Flash Icon", #regPoint, Point(0,0))
end if
◆ 方法:#clearError
函数:CallIcon(@"IconTitle", #clearError)
说明:将错误状态重置为0。如果Flash动画在载入内存时发生了错误,则Authorware将Flash动画的#state属性设置为-1,调用该方法可以将#state属性重置为0。例如:
If GetIconProperty(@"Flash Icon", #state)=-1 then
Error:=CallIcon(@"Flash Icon", #getError)
CallIcon(@"Flash Icon", #clearError)
end if
◆ 属性:#defaultRect
函数:SetIconProperty(@"IconTitle", #defaultRect, rect)
说明:设置指定的Flash Xtra图标中显示Flash动画的默认大小,参数rect 为一个矩形范围,比如:Rect(0,0,50,50)。当更改Flash动画的#defaultRect属性后,#defaultRectMode属性的值将自动变为#fixed。例如:
SetIconProperty(@"Flash Icon", #defaultRect, Rect(0, 0, WindowWidth, WindowHeight))
◆ 属性:#defaultRectMode
函数:SetIconProperty(@"IconTitle", #defaultRectMode, rect)
说明:设置Flash动画默认大小的模式,当参数rect取值为#Flash时,即将Flash动画的默认大小设置为Flash动画的原始大小;当参数rect取值#fixed时,即将Flash动画的默认大小设置为属性#defaultRect指定的大小,rect的默认取值为#Flash。例如:
SetIconProperty(@"Flash Icon", #defaultRectMode, #fixed)
◆ 属性:#directToStage
函数:SetIconProperty(@"IconTitle", #directToStage, boolean)
SetSpriteProperty(@"IconTitle", #directToStage, boolean)
说明:设置Flash动画是否以最优显示方式播放,参数boolean的取值为TRUE或FALSE。
◆ 属性:#eventPassMode
函数:SetIconProperty(@"IconTitle", #eventPassMode, value)
SetSpriteProperty(@"IconTitle", #eventPassMode, value)
说明:设置鼠标事件的发送模式,当参数value取值为#passAlways时,则总是向Authorware发送鼠标事件;取值为# passButton时,则只有当Flash动画中的按钮被点击时才发送鼠标事件;取值为#passNotButton时,则只有当按钮以外的对象被点击时才发送鼠标事件;取值为#passNever时,则不发送鼠标事件,value的默认值为#passAlways。
◆ 属性:#fixedRate
函数:SetIconProperty(@"IconTitle", #fixedRate, integer)
SetSpriteProperty(@"IconTitle", #fixedRate, integer)
说明:设置Flash动画的播放速率,默认取值为15,单位为帧/秒,该属性只在#playbackMode属性取值为#fixed时才有效。例如:
SetSpriteProperty(@"Flash Icon", #playbackMode, #fixed)
SetSpriteProperty(@"Flash Icon", #fixedRate, PathPositon@"Slider"
◆ 属性:#FlashRect
函数:result:=GetIconProperty(@"IconTitle", #FlashRect)
说明:获得Flash动画的原始大小,返回值为一矩形范围,比如:Rect(0,0,50,50)。
◆ 属性:#frame
函数:SetSpriteProperty(@"IconTitle", #frame, integer)
说明:设置Flash动画当前显示的帧数,帧数由参数integer确定,只能取整数。例如:
SetSpriteProperty(@"FlashIcon", #frame, GetSpriteProperty(@"FlashIcon", #frameCount)
◆ 属性:#frameCount
函数:integer:=GetIconProperty(@"IconTitle", #frameCount)
说明:返回指定图标中Flash动画的总帧数。
◆ 属性:#frameRate
函数:integer:=GetIconProperty(@"IconTitle", #frameRate)
说明:返回指定图标中Flash动画的原始速率,即在Flash中设定的速率,单位为帧/秒。例如:
If GetIconProperty(@"Flash Icon", #frameRate) < 15 then
SetSpriteProperty(@"Flash Icon", #playbackMode, #fixed)
SetSpriteProperty(@"Flash Icon", #fixedRate, 15)
end if
◆ 方法:#frameReady
函数:boolean:=CallSprite(@"IconTitle", #frameReady, framenumber)
说明:检测变量framenumber指定的某一帧的数据是否已经载入到内存中,即检测该帧是否可以播放,是则返回值为TRUE,否则为FALSE。例如:
If CallSprite(@"Flash Icon", #frameReady, 25) then
FrameReady:=True
else
FrameReady:=False
end if
◆ 方法:#getError
函数:result:=CallIcon(@"IconTitle", #getError)
说明:返回将Flash动画载入内存时发生错误的种类。如果返回值为FALSE,则表示没有错误发生;如果返回值为#memory,则表示载入Flash动画时内存不足;如果返回值为#fileNotFound,则表示未找到需要载入内存的Flash动画文件;如果返回值为#network,则表示网络错误阻止Flash动画的载入;如果返回值为#fileFormat,则表示文件格式错误或读取文件时发生错误;如果返回值为#other,则表示发生了其他错误。例如:
If GetIconProperty(@"Flash Icon", #state)=-1 then
Error:=CallIcon(@"Flash Icon", #getError)
CallIcon(@"Flash Icon", #clearError)
end if
◆ 方法:#getVariable
函数:CallSprite(@"Flash Icon ", #getVariable, variableName)
说明:返回Flash动画中参数variableName指定的变量的值,变量仅限于非空的字符串变量。例如:
result:=CallSprite(@"Flash Icon", #getVariable, "currentURL"
◆ 方法:#goToFrame
函数:CallSprite(@"IconTitle", #goToFrame, framenumber)
说明:跳转到Flash动画的参数framenumber指定的某一帧,与设置#frame属性的效果是一样的。例如:
CallSprite(@"Flash Icon", #goToFrame, ChoiceNumber@"My Interaction"
◆ 方法:#hitTest
函数:result:=CallSprite(@"IconTitle", #hitTest, point)
说明:检测参数point所指定的位置(相对于演示窗口)处在Flash动画的何种区域。如果返回值为#background,则表示point指定的位置处于Flash动画的背景区;如果返回值为#normal,则表示point指定的位置处于Flash动画的某个填充对象之上;如果返回值为#button,则表示point指定的位置处于Flash动画的某个按钮区域之内。例如:
result:=CallSprite(@"Flash Icon", #hitTest, Point(CursorX, CursorY))
◆ 方法:#hold
函数:CallSprite(@"IconTitle", #hold)
说明:暂停播放Flash动画,但是如果Flash动画包含音频的话,声音将会继续播放,图像暂停在当前帧。
◆ 属性:#imageEnabled
函数:SetIconProperty(@"IconTitle", #imageEnabled, boolean)
SetSpriteProperty(@"IconTitle", #imageEnabled, boolean)
说明:设置播放Flash动画时是否显示图像,参数boolean的取值可以是TRUE或FALSE,默认取值为TRUE。例如:
SetSpriteProperty(@"Flash Icon", #imageEnabled, False)
repeat while GetIconProperty(@"Flash Icon", #state) <>4 |<>-1
end repeat
SetSpriteProperty(@"Flash Icon", #imageEnabled, True)
◆ 属性:#linked
函数:SetIconProperty(@"IconTitle", #linked, boolean)
说明:设置Flash动画是否作为链接方式播放,如果参数boolean的值为TRUE,则Flash动画作为外部文件链接到Authorware文件;如果参数boolean的值为FALSE,则Flash动画将存储到Authorware文件内部。
◆ 属性:#loop
函数:SetIconProperty(@"IconTitle", #loop, boolean)
SetSpriteProperty(@"IconTitle", #loop, boolean)
说明:设置Flash动画是否循环播放,参数boolean的取值可以是TRUE或FALSE。例如:
If Checked@"Continuous Play" then
SetSpriteProperty(@"Flash Icon", #loop, True)
else
SetSpriteProperty(@"Flash Icon", #loop, False)
end if
◆ 属性:#mouseOverButton
函数:boolean:=GetSpriteProperty(@"IconTitle", #mouseOverButton)
说明:检测当前鼠标位置是否正处于Flash动画的按钮之上,返回值为TRUE或FALSE。例如:
If GetSpriteProperty(@"Flash Icon", #mouseOverButton) then
Message:= "请点击此处继续!"
else
Message:= ""
end if
◆ 属性:#originH
函数:SetIconProperty(@"IconTitle", #originH, number)
SetSpriteProperty(@"IconTitle", #originH, number)
说明:设置Flash动画缩放或旋转时中心点的水平坐标,该属性只在#originMode属性的值为#point时有效。例如:
SetSpriteProperty(@"Flash Icon", #originMode, #point)
SetSpriteProperty(@"Flash Icon", #originH, ClickX)
SetSpriteProperty(@"Flash Icon", #originV, ClickY)
◆ 属性:#originMode
函数:SetIconProperty(@"IconTitle", #originMode, value)
SetSpriteProperty(@"IconTitle", #originMode, value)
说明:设置Flash动画中心点的模式,参数value取值为#center时,则将中心点设置在Flash动画的中央;参数value取值为#topleft时,则将中心点设置在Flash动画的左上角位置;参数value取值为#point时,则中心点的位置可以由#originPoint,#originH和#originV等属性确定,参数value的默认取值为#center。例如:
SetSpriteProperty(@"Flash Icon", #originMode, #point)
SetSpriteProperty(@"Flash Icon", #originH, 12)
◆ 属性:#originPoint
函数:SetIconProperty(@"IconTitle", #originPoint, point)
SetSpriteProperty(@"IconTitle", #originPoint, point)
说明:设置Flash动画中心点的位置,参数point的取值为一个点,比如:Point(100,200)。当使用该属性设置Flash动画中心点位置时,#originMode属性的值将自动更改为#point。例如:
SetSpriteProperty(@"Flash Icon", #originPoint, Point(ClickX, ClickY))
◆ 属性:#originV
函数:SetIconProperty(@"IconTitle", #originV, number)
SetSpriteProperty(@"IconTitle", #originV, number)
说明:设置Flash动画缩放或旋转时中心点的垂直坐标,该属性只在#originMode属性的值为#point时有效,与#originH属性类似。
◆ 属性:#pathName
函数:SetIconProperty(@"IconTitle", #pathName, filepath)
说明:设置以链接方式播放的Flash动画的路径,路径可以是本地驱动器、网络驱动器或是URL地址,该属性只在#linked属性的值为TRUE时才有效。例如:
SetIconProperty(@"Flash Icon", #pathName, FileLocation^"ya.swf"
◆ 属性:#pausedAtStart
函数:SetIconProperty(@"IconTitle", #pausedAtStart, boolean)
说明:设置Flash动画是否在开始播放时暂停,参数boolean的取值可以是TRUE或FALSE,默认值是FALSE。如果#pausedAtStart属性的值为TRUE,可以调用#play方法开始播放Flash动画。例如:
SetIconProperty(@"Flash Icon", #pausedAtStart, True)
if getscore>=100 then
CallSprite(@"Flash Icon", #play)
end if
◆ 属性:#percentStreamed
函数:integer:=GetIconProperty(@"IconTitle", #percentStreamed)
说明:返回指定标中Flash动画载入到内存时完成的百分比,返回值为0到100之间的整数。
◆ 方法:#play
函数:CallSprite(@"IconTitle", #play)
说明:开始播放指定图标中的Flash动画。如果指定的Flash动画已经停止播放,则从当前帧开始播放;如果Flash动画已经播放到最后一帧,则从第一帧开始播放。例如:
If GetSpriteProperty(@"Flash Icon", #playing) = False then
CallSprite(@"Flash Icon", #play)
end if
◆ 属性:#playBackMode
函数:SetIconProperty(@"IconTitle", #playBackMode, mode)
SetSpriteProperty(@"IconTitle", #playBackMode, mode)
说明:控制Flash动画播放速率的模式。参数mode取值为#normal时,Flash动画将以其原始速率播放,即在Flash里设定的播放速率;参数mode取值为#lockStep,Flash动画将以Flash Xtra属性对话框中设定的速率播放;参数mode取值为#fixed时,Flash动画将以#fixedRate属性指定的速率播放。例如:
SetIconProperty(@"Flash Icon", #playBackMode, #fixed)
SetIconProperty(@"Flash Icon", #fixedRate, 15)
◆ 属性:#playing
函数:boolean:=GetSpriteProperty(@"Flash Icon", #playing)
说明:检测指定图标中的Flash动画是否正在播放,如果正在播放,则返回值为TRUE,否则返回值为FALSE。
◆ 属性:#posterFrame
函数:SetIconProperty(@"IconTitle", #posterFrame, framenumber)
说明:设置将Flash动画第几帧的图像作为Flash Xtra属性对话框中预览区域的图像,参数framenumber取整数值,默认值为1。例如:
SetIconProperty(@"Flash Icon", #posterFrame, GetSpriteProperty(@
"Flash Icon", #frameCount))
◆ 属性:#preload
函数:SetIconProperty(@"IconTitle", #preload, boolean)
说明:设置Flash动画在播放前是否预先全部载入内存,参数boolean的取值可以是TRUE或FALSE,该属性只对最为外部链接方式的Flash动画有效。例如:
SetIconProperty(@"Flash Icon", #preload, False)
SetIconProperty(@"Flash Icon", #bufferSize, 65536)
◆ 属性:#quality
函数:SetIconProperty(@"IconTitle", #quality, value)
SetSpriteProperty(@"IconTitle", #quality, value)
说明:控制Flash动画的播放质量,即控制播放Flash动画时是否启用反图形失真(Anti-aliasing)。参数value取值为#autoHigh时,播放Flash动画时启用 Anti-aliasing,以高质量播放Flash动画,如果Flash动画的实际播放速率低于指定的播放速率,则Authorware将自动关闭Anti-aliasing,以低质量播放Flash动画;参数value取值为#autoLow时,播放Flash动画时将关闭 Anti-aliasing,以低质量播放Flash动画,如果Flash播放器判断当前系统可以使用高质量播放Flash动画,则自动启用Anti-aliasing;参数value取值为#high时,则播放Flash动画时总是启用Anti-aliasing,以高质量播放Flash动画;参数value取值为#low时,则播放Flash动画时总是关闭Anti-aliasing,以低质量播放Flash动画。例如:
If ScreenDepth <= 8 then
SetSpriteProperty(@"Flash Icon", #quality, #low)
end if
◆ 属性:#regPoint
函数:SetIconProperty(@"IconTitle", #regPoint, point)
说明:设置Flash动画定位点的坐标。例如:
SetIconProperty(@"Flash Icon", #regPoint, Point(0,0))
◆ 方法:#rewind
函数:CallSprite(@"IconTitle", #rewind)
说明:将Flash动画倒回到第一帧,不管Flash动画已经停止播放或是正在播放均适用。
◆ 属性:#rotation
函数:SetIconProperty(@"IconTitle", #rotation, degree)
SetSpriteProperty(@"IconTitle", #rotation, degree)
说明:设置Flash动画播放时旋转的角度。例如:
SetIconProperty(@"Flash Icon", #obeyScoreRotation, FALSE)
repeat with i := 1 to 36
SetSpriteProperty(@"Flash Icon", #rotation, i * 10)
end repeat
◆ 属性:#scale
函数:SetIconProperty(@"IconTitle", #scale, percent)
SetSpriteProperty(@"IconTitle", #scale, percent)
说明:设置Flash动画播放时的缩放比率,参数percent的默认值为100。例如:
SetSpriteProperty(@"Flash Icon", #scale, 0)
repeat with i := 1 to 20
SetSpriteProperty(@"Flash Icon", #scale, i * 5)
end repeat
◆ 方法:#setVariable
函数:CallSprite(@"Flash Icon", #setVariable, variableName, value)
说明:设置Flash动画中某个变量的值,该值必须是字符串值。例如:
CallSprite(@"Flash Icon", #setVariable, "currentURL",
"http://www.macromedia.com"
◆ 属性:#sound
函数:SetIconProperty(@"IconTitle", #sound, boolean)
SetSpriteProperty(@"IconTitle", #sound, boolean)
说明:设置播放Flash动画时是否播放动画中的音频部分,参数boolean的取值可以是TRUE或FALSE。例如:
If GetSpriteProperty(@"Flash Icon", #sound) then
SetSpriteProperty(@"Flash Icon", #sound, False)
else
SetSpriteProperty(@"Flash Icon", #sound, True)
end if
◆ 属性:#state
函数:result:=GetIconProperty(@"IconTitle", #state)
说明:返回Flash动画载入内存时的状态,属性#state的返回值与其含义的对应关系如下:
0:图标数据未载入内存
1:标题正在载入内存
2:标题载入完毕
3:图标媒体数据正在载入内存
4:图标媒体数据载入完毕
-1:有错误发生
◆ 方法:#stop
函数:CallSprite(@"IconTitle", #stop)
说明:停止播放Flash动画。例如:
If GetSpriteProperty(@"Flash Icon", #playing) then
CallSprite(@"Flash Icon", #stop)
end if
◆ 属性:#stream
函数:bytesStreamed:=CallIcon(@"IconTitle", #stream, numberOfBytes)
说明:手工确定Flash动画一次载入内存的字节数,由于各方面的影响,实际载入内存的数据量有可能小于参数numberOfBytes设定的数量。例如:
CallIcon(@"Flash Icon", #stream, 32000)
◆ 属性:#streamSize
函数:bytesInStream:=GetIconProperty(@"IconTitle", #streamSize)
说明:返回指定图标中Flash动画载入内存的字节数,返回值为整数。
◆ 属性:#URL
函数:SetIconProperty(@"IconTitle", #URL, filePath)
说明:#URL属性与#pathname属性的作用是一样的,请读者参见#pathname属性的用法。


听着摇滚乐,喝着白开水。

魔岩

职务:版主
等级:6
金币:34.0
发贴:4453
注册:2004/1/13 10:53:31
#152002/8/3 14:56:58
外部擴展函數Animgif的用法[转载自网络]

在AuthorWare中使用動畫GIF文件的方法一般有兩種。
第一種,通過內置的"Animated GIF..."圖示載入(效果較好,推薦使用);
第二種,使用AnimGif.U32。其中,第二種方法適用於AuthorWare3.5以後的各種版本。

以下是你關心的外部擴展函數Animgif的用法!!
EraseAnimatedGif()--擦除GIF動畫。
DisplayAnimatedGif(WindowHandle;FileName;Left;Top;Color)--在展示窗口上點(Le
ft,Top)處以Color參數指定的背景色,顯示FileName參數指定的GIF動畫。
WindowHandle--AuthorWare展示窗口的控制碼,不要改變此項
FileName--可使用相對路徑或絕對路徑指定需顯示的GIF 赢嫏n案名
Left--設定GIF動畫左上角的橫坐標,其值可以是0-800
Top--設定GIF動畫左上角的縱坐標,其值可以是0-600
Color--設定GIF動畫的背景色。其值可以是0-16
0: 透明
1: Black黑色
2: Maroon栗色
3: Green綠色
4: Olive橄欖色
5: Navy藏青色
6: Purple紫色
7: Teal水的顏色
8: Gray灰色
9: Silver銀色
10: Red紅色
11: Lime酸橙色
12: Yellow黃色
13: Blue藍色
14: Fuchsia紫紅色
15: Aqua淺藍色
16: White白色