主题:  halt~idleLoadMode

davidwee

职务:普通成员
等级:1
金币:0.0
发贴:12
#12001/2/15 18:17:38
halt

语法
halt
描述
命令;退出当前句柄以及所有调用它的句柄并停止编辑期间的电影或运行期间的项目文件。
实例
这个语句检查目前可用内存是否小于50k,如果小于,则退出所有调用它的句柄并停止播放影片。
if the freeBytes < 50*1024 then halt
参见
abort, exit, pass, quit


handler()

语法
scriptObject.handler(#handlerSymbol)
描述
如果指定的scriptObject包含一个名称为#handlerSymbol的句柄则返回一个TRUE值,否则返回一个FALSE值。scriptObject必须是一个父脚本、子对象或行为。
实例
以下语句调用一个对象上存在的句柄:
if spiderObject.handler(#pounce) = TRUE then
spiderObject.pounce()
end if
参见
handlers(), new(), rawNew(), script


handlers()

语法
scriptObject.handlers()
描述
该函数返回指定的scriptObject中的一系列句柄。每个句柄表现为列表中的一个符号。此函数用于调试电影。
注:你只能通过成员的script属性,而不能直接得到一个脚本演员的句柄。
实例
这个语句在消息窗口中显示子对象RedCar的句柄表:
put RedCar.handlers()
-- [#accellerate, #turn, #stop]
实例
这个语句在消息窗口中显示父脚本成员CarParentScript的句柄表:
put member("CarParentScript").script.handlers()
-- [#accellerate, #turn, #stop]
参见
handler(), script


height

语法
member(whichCastMember).height
the height of member whichCastMember
imageObject.height
sprite(whichSprite).height
the height of sprite whichSprite
描述
演员,图像对象和精灵属性;对于矢量、Falsh、动态GIF、位图和形状演员,决定演员在舞台上显示的像素高度。
对于演员,只对位图和形状演员有效。此属性仅能测试不能设置。
对于图像对象,此属性仅能测试不能设置。
对于精灵:设置精灵高度将自动地设置精灵的拉伸属性为TRUE。对于这个由Lingo设置到当前精灵的值,此精灵必须是一个木偶。此属性设置和测试。
实例
这个语句将演员Headline的高度值赋以予变量vHeight:
vHeight = member("Headline").height
实例
这个语句精灵10的高度为26个像素:
sprite(10).height = 26
实例
这个语句将精灵(I+1)的高度值赋以予变量vHeight:
vHeight = sprite(i + 1).height
参见
height, rect (sprite), width


hilite (命令)

语法
fieldChunkExpression.hilite()
hilite fieldChunkExpression
描述
命令;高亮(选择)指定块的域精灵,可以是任何Lingo允许定义的块,如字符,字或行。在Macintosh中,高亮颜色在颜色控制面板中设置。
实例
这个语句高亮域演员Comments中和第四个单词:
member("Comments").word[4].hilite()
实例
这个语句使高亮显示于myRecipes域中的文字非高亮显示:
myLineCount = member("myRecipes").line.count
member("myRecipes").line[myLineCount + 1].hilite()
参见
char...of, item...of, line...of, word...of; delete, mouseChar, mouseLine, mouseWord; field;
selection() (function); selEnd, selStart


hilite (演员属性)

语法
member(whichCastMember).hilite
the hilite of member whichCastMember
描述
演员属性;确定由按钮工具建立的复选框或单选框是选中(TRUE)或是没选中(FALSE,默认)。
如果whichCastMember是一个字符串,它指定演员的名称。如果是一个整数,它指定的则是演员号。
此属性可测试和设置。
实例
这个语句检查按钮成员Sound on是否选择中,如是,打开声音1通道并将声音调到最大:
if member("Sound on").hilite = TRUE then sound(1).volume = 255
实例
这个语句使用Lingo通过设置powerSwitch的hilite成员属性为真来选中此按钮成员:
member("powerSwitch").hilite = TRUE
参见
checkBoxAccess, checkBoxType


hitTest()

语法
sprite(whichFlashSprite).hitTest(point)
hitTest(sprite whichFlashSprite, point)
描述
函数;指出一个Flash电影的哪一部分直接显示在Director舞台的指定位置上。这个Director舞台位置表示为一个Director点值,例如point(100,50)。hitTest函数返回这些值:
#background-一个Flash电影精灵背景内指定的舞台位置。
#normal-一个填充对象内指定的舞台位置。
#button-一个按钮有效区域内指定的舞台位置。
#editText-一个Flash可编辑文本区域内指定的舞台位置。
实例
此帧脚本检查鼠标是否停留在通道5中的一个Flash电影精灵内的一个按钮上,如是,脚本设置一个文本域来显示一个状态信息:
on exitFrame
if sprite(5).hitTest(the mouseLoc) = #button then
member("Message Line").text = "Click here to play the movie."
updateStage
else
member("Message Line").text = ""
end if
go the frame
end


HMStoFrames()

语法
HMStoFrames(hms, tempo, dropFrame, fractionalSeconds)
描述
函数;转换电影中标准的时、分、秒到同等数量的帧或转换时、分、秒数到时间如果设置tempo 参数为1(1帧=1秒)。
hms-以sHH:MM:SS.FFD格式指定时间的串表达式,其中:
s 一个字符用于时间小于零的情况,或一个空格用于时间大于或等于零的情况。
HH 小时。
MM 分钟。
SS 秒。
FF 如fractionalSeconds为TRUE则表示小数位的秒数,否则表示帧数。
D 若dropFrame为TRUE则使用D,否则为空格。
tempo-指定每秒帧数。
dropFrame-指定帧是否为drop帧(TRUE,FALSE)的逻辑表达式(TRUE,FALSE)。如果串hms以字母d结束,则时间作为一个drop帧,而不管dropFrame的值如何。
fractionalSeconds-指示秒后面数值所表示意义的逻辑表达式;它们可以是四舍五入到第一个百分数的小数部分的秒数(TRUE)或是剩余的帧数(FALSE)。
实例
这个语句指出一个30帧每秒的影片在1分30.1秒时间中的帧数:dropFrame与fractionalSeconds参数都没有使用。
put HMStoFrames(" 00:01:30.10 ", 30, FALSE, FALSE)
-- 2710
实例
这个语句转换600秒为分钟:
>> put framesToHMS(600, 1,0,0)
>> -- " 00:10:00.00 "
实例
这个语句转换一个半小时为秒钟:
>> put HMStoFrames("1:30:00", 1,0,0)
>> -- 5400
参见
framesToHMS()


hold

语法
sprite(whichFlashSprite).hitTest(point)
hold sprite whichFlashSprite
描述
Flash命令;停止在当前帧中播放的Flash电影,但所有声音仍继续播放。
实例
这个帧脚本停止在通道5至10中的Flash电影精灵的播放,但允许声音继续播放:
on enterFrame
repeat with i = 5 to 10
sprite(i).hold()
end repeat
end
参见
movieRate, pause (movie playback)


hotSpot

语法
member(whichCursorCastMember).hotspot
the hotspot of member whichCursorCastMember
描述
光标成员属性;指定水平和垂直的像素点位置以描述在一个彩色动画光标成员whichCursorCastMember中的热点。Director使用此点来跟踪光标在屏幕上的位置(如,它返回用于Lingo函数mouseH和mouseV的值)并确定何时产生一个rollover(发出一个mouseEnter消息)事件。
光标的左上角为点(0,0),是缺省的hotSpot值。
试图将热点设置于光标之外将导致一个错误。
此属性可测试和设置。
实例
此句柄设置一个32*32的热点光标(成员号在变量cursorNum中)到光标的中心:
on startMovie
member(cursorNum).hotSpot = point(16,16)
end


hotSpotEnterCallback

语法
sprite(whichQTVRSprite).hotSpotEnterCallback
the hotSpotEnterCallback of sprite whichQTVRSprite
描述
QuickTime VR精灵属性;当光标离开显示于舞台上的QuickTime VR热点时包含此名称的句柄开始运行。此
QuickTime VR精灵首先收到一个消息。此消息有两个参数: me参数和光标所进入的热点的ID
清除调用,设置此属性为0。
为避免性能损失,仅在需要时设置一个callback属性。
此属性可测试和设置。
参见
hotSpotExitCallback, nodeEnterCallback, nodeExitCallback, triggerCallback


hotSpotExitCallback

语法
sprite(whichQTVRSprite).hotSpotExitCallback
the hotSpotExitCallback of sprite whichQTVRSprite
描述
QuickTime VR精灵属性;当光标离开显示于舞台上的QuickTime VR热点时包含此名称的句柄开始运行。此
QuickTime VR精灵首先收到一个消息。此消息有两个参数: me参数和光标所离开的热点的ID
清除调用,设置此属性为0。
为避免性能损失,仅在需要时设置一个callback属性。
此属性可测试和设置。
参见
nodeEnterCallback, nodeExitCallback, triggerCallback


HTML

语法
member(whichMember).HTML
描述
演员属性;访问文本和标记以控制在一个HTML格式的文本演员中的文本布局。
此属性可测试和设置。
实例
这个语句显示在文本演员Home Page中的HTML格式信息到一个消息窗口中:
put member("Home Page").HTML
参见
importFileInto, RTF


hyperlink

语法
chunkExpression.hyperlink
描述
文本演员属性;返回文本演员中指定块表达式中的超级链接字符串。
此属性可测试和设置。
检索此属性时,包含chunkExpression的第一个字符将被使用。
超级链接不会重叠(即使是部分的重叠)。在一个已存的链接上设置超级链接,将会用一个新的来替换它。
设置超级链接为空字符串可删除它。
实例
这个句柄在文本演员MacroLink中的第一个单词上创建一个连接到Macromedia网站的超级链接:
on startMovie
member("MacroLink").word[1].hyperlink = \
"http://www.macromedia.com"
end
参见
hyperlinkRange, hyperlinkState


on hyperlinkClicked

语法
on hyperlinkClicked me, data, range
statement(s)
end
描述
系统消息和事件句柄;用于确定何时一个超链接被真正地点击。
此事件句柄有如下参数:
me-用在行为中以标识精灵实例
data-超级链接自己的数据;编辑文本演员时在文本检查器中输入的字符串
range-文本中超级链接的字符范围(它可以使用语法member Ref.char[range[1]..range[2]]以取得自己的文本范围)
此句柄可作为一个行为脚本关联到一个精灵。不要将此句柄放到一个演员脚本中。
实例
此行为显示一个链接以检查被单击的超级链接,如需要则转到一个URL,并将这个链接的文本输出到一个消息窗口中:
property spriteNum
on hyperlinkClicked me, data, range
if data starts "http://" then
goToNetPage(data)
end if
currentMember = sprite(spriteNum).member
anchorString = currentMember.char[range[1]..range[2]]
put "The hyperlink on"&&anchorString&&"was just clicked."
end


hyperlinkRange

语法
chunkExpression.hyperlinkRange
描述
文本演员属性;返回包含块描述的第一个字符的超链接的范围。
此属性可测试和设置。
如同hyperLink和hyperLinkState,返回的链接范围包含chunkExpression的第一个字符。
参见
hyperlink, hyperlinkState


hyperlinks

语法
chunkExpression.hyperlinks
描述
文本演员属性;返回一个包含所有指定文本演员块的超级链接范围的线性表。每个表现为线性表的范围包含两个元素,一个链接的起始字符和一个终止字符。
实例
这个语句返回文本演员Glossary的所有链接到消息窗口中:
put member("Glossary").hyperlinks
-- [[3, 8], [10, 16], [41, 54]]


hyperlinkState

语法
hyperlinkRange 232
textChunk.hyperlinkState
描述
文本演员属性;包含此超级链接的当前状态。可能的状态值为: #normal, #active, 和#visited。
此属性可设置和测试。
如同hyperLink和hyperLinkRange,返回的链接范围包含chunkExpression的第一个字符。
实例
此句柄检查被单的链接是否为一个web地址。如是,超级链接文本的状态设置为#visited,电影切换到这个web地址。
property spriteNum
on hyperlinkClicked me, data, range
if data starts "http://" then
currentMember = sprite(spriteNum).member
currentMember.word[4].hyperlinkState = #visited
goToNetPage(data)
end if
end
参见
hyperlink, hyperlinkRange


on idle

语法
on idle
statement(s)
end
描述
系统消息和事件句柄;包含当电影无其它任何事件处理时的语句,可用于希望Lingo频繁处理的语句,如更新全程变量和显示当前电影情况的语句。
因为在on idle句柄中的语句会被频繁地运行,最好不要将费时的Lingo语句写入其中。
好的方式是需要时将on idle句柄置于帧脚本而不是电影脚本中。
Director可以在空闲时加载内部或外部成员。不过,它不能在空闲时加载已连接的演员。
idle消息仅传送到帧和电影脚本中。
实例
下面句柄在无其它任何句柄处理时更新显示的时间:
on idle
member("Time").text = the short time
end idle
参见
idleHandlerPeriod


idleHandlerPeriod

语法
the idleHandlerPeriod
描述
电影属性;确定电影发送一个idle消息的最大次数。缺省值为1,它告诉电影每秒最多发送60次idle消息。
当播放头进入一个帧时,Director开始一个计时器,在舞台上重绘适当的精灵,并产生一个enterFrame事件。然后,如果所设置的时间到达了,Director 产生一个exitFrame事件并进入到下一帧,如果此帧的时间数还没到,Director将周期性地产生一个idle消息直到达到所设置的时间数。idle事件产生的时间由idleHandlerPeriod所决定。
可以设置的idleHandlerPeriod是:
0-可能的最大idle消息数
1— 每秒60次
2— 每秒30次
3-每秒20次
n-每秒60/n次
每帧的idle事件次数也取决于电影的帧速度和其它行为,包括是否有Lingo在执行。如果速度为60fps且idleHandlerPeriod 值为1,每帧将产生一个idle事件。如果为20fps,则每秒产生3个idle事件。Director的idle时间结果不包含当前任务的执行且不产生任何的事件。
另一方面,如果idleHandlerPeriod属性设置为0且帧速特别慢,将有数千个idle事件产生。
实例
下面语句设置每秒钟产生的最多idle事件数:
the idleHandlerPeriod = 60
参见
idleHandlerPeriod, idleLoadDone(), idleLoadMode, idleLoadTag, idleReadChunkSize


idleLoadDone()

语法
idleLoadDone(loadTag)
描述
函数;报告所给标记的所有演员是否已加载(TRUE)或还没加载(FALSE)。
实例
下面语句判断如果标记为20的演员已加载则播放电影“on idle”:
if idleLoadDone(20) then play movie("on idle")"
参见
idleHandlerPeriod, idleLoadMode, idleLoadPeriod, idleLoadTag, idleReadChunkSize


idleLoadMode

语法
the idleLoadMode
描述
系统属性;依照下列值确定idle期间preLoad和preLoadMembe命令何时试图加载演员
0-不执行idle加载
1-如帧之间有空闲时间则执行加载
2-在idle事件期间执行idle加载
3-以最频繁的速度执行idle加载
idleLoadMode系统属性只工作于与preLoad和preLoadMember关联的命令。
使用idle加载的演员仅在电影使用它们时才解压缩。当电影播放时,解压演员可能会有一个明显的停顿。
实例
下面语句使电影试图以最频繁的速度来加载由preLoad和preLoadMember命令指定的演员:
the idleLoadMode = 3
参见
idleHandlerPeriod, idleLoadDone(), idleLoadPeriod, idleLoadTag, idleReadChunkSize