#12001/1/2 18:33:12
getVariable()
语法:getVariable(sprite flashSpriteNum, "variableName")
描述:
该函数返回Flash Sprite中的变量的当前值,这些Flash变量是在Flash4中声明的。
实例:
currentURL是Flash cast member中的一个变量,该Flash cast member被置于channel 3中
下面的表达实在message window中返回变量currentURL的值
put getVariable(sprite 3, "currentURL")
-- "http://www.macromedia.com/software/flash/"
参见:hitTest(), setVariable()
-------------------------------------------------------------------------------------------
global
语法:global variable1 {, variable2} {, variable3}...
描述:
关键字;把变量定义为全局变量,可以共享于电影中的所有处理程序。
每个处理程序调用或改变一个全局变量的内容都必须用关键字global对该变量进行声明,
否则,即使在其他的处理程序中将这个变量声明为全局变量,该处理程序也将会视该变
量为一个局部变量。
注释:为了确保全局变量在整个电影中是可用的,可以在prepareMovie处理程序中来声明并初始化他们。
这样的话,如果你离开当前电影并从其他电影中再次进入的话,你的全局变量将会被重置为初始值。
一个全局变量可以在任何处理程序或脚本中声明。任何处理程序或脚本也可以通过声明它为全局
变量并调用它的值。如果脚本改变了这个变量的值,这个新的值对于每个将该变量声明为全局变量的处
理程序都是可用的。
不论是在哪里声明的,一个全局变量在任何脚本或电影中都是可用的;当你通过其他帧、电影或
窗口的时候,它不会自动清除。
即使没有被声明,在message window中使用的任何变量会自动成为全局变量。
即使电影都在同一个网页上播放,在internet上播放的shockwave电影也不能访问其他电影中的
全局变量。如果一个内嵌的电影导航到其他电影并通过goToNetMovie或go movie替换其本身,那么它们
可以共享全局变量。
实例:
这个例子中,如果全局变量StartingPoint为空则赋给它初始值为1。这样在导航中进入或离开此
电影时不会丢失变量中的数据。
global gStartingPoint
on prepareMovie
if voidP(gStartingPoint) then gStartingPoint = 1
end
参见:showGlobals, property, gotoNetMovie
-----------------------------------------------------------------------------------------
globals
语法:the globals
描述:
系统属性;该属性包含一个特殊的属性列表,该属性列表包含除了VOID变量外的所有当前的全局
变量,每个全局变量为该属性列表中的一个属性,与其对应的是它的值。
你可以对globals应用以下的列表操作
count() ----返回列表中的项目个数
getPropAt(n)-------返回列表中第n位的属性名称
getProp(x)-------通过指定属性名称返回列表中所对应的条目值
getAProp(x)------通过指定属性名称返回列表中所对应的条目值
注释:
the globals属性列表中自动包含#version属性,即当前运行的director版本。这就意味着即使
没有声明全局变量,the globals属性列表中还至少有一个条目。
该属性与showglobals的区别是the globals不能应用于message window中,可以使用showglobals
命令在message window中显示全局变量
参见:showGlobals, clearGlobals
------------------------------------------------------------------------------------------
go
语法:go {to} {frame} whichFrame
go {to} movie whichMovie
go {to} {frame} whichFrame of movie whichMovie
描述:
命令;这个命令可以使播放头移动到指定电影中指定的帧上。表达式中的whichFrame可以是一个
标记或整数帧。表达式中的whichMovie必须是一个指定的电影文件。(如果电影文件在其他的文件夹
中,则需要指定whichMovie的路径)。
当Lingo处于激活状态时可以使用go loop短语可以使播放头循环到前一个标记点,这样可以很
方便的使播放头在电影的一部分中保持循环,可以避免使用go to the frame在带有trasition的一帧
中循环,导致电影播放速度变慢和处理器超载。
用标记点来标识导航指令的目标要比帧好,因为编辑电影常常导致帧数的变化,这样每一次都需
要重新定位,而是用标记点则可以通过移动标记点来定位,当它移动时所有的引用将自动改变。
go to movie命令由电影文件的第一帧载入,如果命令是由一个处理程序引发的,那么这个处理
程序将继续执行。如果想要在播放电影时将处理程序挂起,使用play命令,并在其后使用play done命令
来结束。
当你指定播放一个电影时,该电影文件如果在不同的文件夹中需要指定该文件的路径。为了避免
潜在的读取错误,不要包括电影文件的.dir,.dxr或.dcr扩展名。
为了在URL中更有效率的导航到电影当中,首先使用downloadNetThing命令去下载本地磁盘上的
电影文件,然后使用go to movie命令导航到该电影文件当中。
当电影文件载入的时候下列将被重置:beepOn 和 constraint 属性; keyDownScript,
mouseDownScript, 和 mouseUpScript; cursor 和 immediate sprite 属性; cursor 和
puppetSprite 命令; and custom menus. 然而,当电影载入时the timeoutScript不会被重置。
实例:下面的语句将播放头传送到命名为“start"的标记点上
go to "start"
实例:下面的语句将播放头传送到名为“Noh Tale to Tell”的电影中的标记点“memory”上
go frame("Memory") of movie("Noh Tale to Tell")
实例:下面的处理程序使电影在当前帧循环。这个处理程序可以在电影播放时使其停留在一帧上,可以
对其他事件做出响应。
on exitFrame
go the frame
end
参见:downloadNetThing, gotoNetMovie, label(),marker(),pathName (movie property), play,
play done
-----------------------------------------------------------------------------------------
go loop
语法:go loop
描述:命令;将播放头送到电影中的前一个标记点,如果当前帧没有标记的话会回到当前帧后面的一
个标记点进行播放,如果当前帧有标记点的话则在当前帧循环。
注释:这个命令同以前版本的Director中的marker(0)相当。
如果播放头的左面没有标记点的话,播放头将会前往其他分支:
1.如果当前帧没有标记点则前往播放头右面的第一个标记点。
2.如果当前帧有标记点则在当前帧循环。
3.如果电影中不包括标记点则前往电影的第一帧。
go loop命令相当于早期lingo版本中的go to the marker(0)于句。
实例:这个语句使电影在当前帧与前一个标记点之间循环
go loop
参见:go, go next, go previous
-----------------------------------------------------------------------------------------
go next
语法:go next
描述:命令;将播放头送到电影中下一个标记点。如果播放头的右边没有标记点的话,播放头将前往
电影中最后的一个标记点,如果电影中没有标记点的话,播放头将前往第一帧。
go next命令相当于早期lingo版本中的go marker(1)语句。
实例:这个语句将播放头送往电影中的下一个标记点
go next
参见:go, go loop, go previous
-----------------------------------------------------------------------------------------
go previous
语法:go previous
描述:命令;将播放头送往电影中的前一个标记点。如果当前帧没有标记点,这个标记点是当前帧后面
的第二个标记点,或者当前帧有一个标记点,则为当前帧后面的第一个标记点。
注释:这个命令相当于早期lingo版本中的marker(-1)命令
如果播放头的左面没有标记点,播放头将会前往其他分支:
1.如果当前帧没有标记点,播放头将会前往右面的第一个标记点
2.如果当前帧有标记点的话,则会停留在当前帧
3.如果电影中没有标记点的话,播放头将会回到第一帧
实例:这个命令将播放头送往电影中的前一个标记点
go previous
参见:go, go loop, go next
-------------------------------------------------------------------------------------------
goToFrame
语法:sprite(whichFlashSprite).goToFrame(frameNumber)
goToFrame(sprite whichFlashSprite, frameNumber)
sprite(whichFlashSprite).goToFrame(labelNameString)
goToFrame(sprite whichFlashSprite, labelNameString)
描述:命令;通过指定frameNumber参数来确定从第几帧来播放flash影片。你可以指定一个整数帧或通
过字符串来指定一个标签名。使用goToFrame命令与设置flash影片的frame属性具有相同的效果。
实例:这个处理程序可以在第5通道的flash影片中前往不同的点。它允许指定一个参数来确定前往哪一帧。
on Navigate whereTo
sprite(5).goToFrame(whereTo)
end
--------------------------------------------------------------------------------------------
gotoNetMovie
语法:gotoNetMovie URL
gotoNetMovie (URL)
描述:命令;从HTTP或FTP服务器上找到并播放新的ShockWave影片。当前的电影会继续播放直到新的电影可用。
只有URLs是被有效支持的参数。URL可以指定一个文件名或电影中的标记名。在internet服务器上
可以指定相对的URLs路径,但必须指定电影文件的扩展名。
当在本地硬盘或网络上进行测试的时候,media必须被定位于dswmedia目录中。
如果gotoNetMovie命令正在进行中,你发出了第二个gotoNetMovie命令,第二个命令将取消第一个。
实例:在这个处理程序中,URL指定了一个director文件名
gotoNetMovie "http://www.yourserver.com/movies/movie1.dcr"
实例:在这个处理程序中,URL指定了一个电影文件中的标记点
gotoNetMovie "http://www.yourserver.com/movies/buttons.dcr#Contents"
实例:在这个处理程序中,gotoNetMovie被作为一个功能使用,该功能为该操作返回Net ID值
myNetID = gotoNetMovie ("http://www.yourserver.com/movies/buttons.dcr#Contents")
--------------------------------------------------------------------------------------------
gotoNetPage
语法:gotoNetPage "URL", {"targetName"}
描述:命令;打开一个shockwave电影或在浏览器中打开另一个MIME页面。
只有URLs使被有效支持的参数。如果电影使在HTTP或FTP服务器上,可以使用相对的URLs路径。
the targetName是一个可选择的HTML参数,它被看作和页面中的window和frame一样。
1.当the targetName是页面中的window或frame的名称时,执行结果会替掉该画面的内容。
2.当the targetName不属于两者,则会打开新的窗口来显示
3.如果没有指定the targetName,则会替换掉当前的显示画面
在创作环境中,gotoNetPage命令会首选激活的浏览器。在projector中,该命令会首先选择通过
Network Preference或browserName命令设置的浏览器,如果两者都没有的话,该命令会尝试在计算机上寻找
一个浏览器。
实例:下面的处理程序将“NewPage.htm”文件读入命名为“frwin”的window或frame中,如果当前存在命名为
“frwin”的window或frame,它们将会被使用,如果没有的话,将会打开一个名为“frwin”的新窗口。
on keyDown
gotoNetPage "Newpage.html", "frwin"
end
实例:这个处理程序将不管当前的浏览器中打开了什么样的窗口,都会打开一个新窗口。
on mouseUp
goToNetPage "Todays_News.html", "_new"
end
参见:browserName(),netDone()
--------------------------------------------------------------------------------------------
grandientType
语法:member(whichCastMember).gradientType
描述:矢量图形演员属性;指定演员所填充的渐变类型。
可用的值为#linear或#radial,gradientType只有当fillMode被设置成#gradient时才有效。
这个属性可以被检验或设置。
实例:这个处理程序使演员“backdrop”在linear和radial两种渐变类型之间切换。
on mouseUp me
if member("backdrop").gradientType = #radial then
member("backdrop").gradientType = #linear
else
member("backdrop").gradientType = #radial
end if
end
参见:fillMode