|
主题: 154-177完成by...snowypeng
|
 5D荣誉斑竹
职务:普通成员
等级:4
金币:13.0
发贴:1504
注册:2000/11/14 12:10:50
|
#12001/7/26 17:11:42
有(英文)处是翻译不确定处 This read-only property is the sound cast member currently playing in sound channel channelNum.(该只读属性是正在声音通道中播放的声音角色成员) 很怪,如何译啊 randomSeed Description System property; specifies the seed value used for generating random numbers accessed through the random() function.
"seed"如何译啊 154 member (声音属性) 语法: sound(channelNum).member sound(通道).member(这句要不要译?) 描述: 该只读属性是正在声音通道中播放的声音角色成员,如果没有播放声音,则返回NULL(空值) 例: 在消息窗口中播放在通道2中声音成员的名称 put sound(2).member -- (member 4 of castLib 1) 参考: getPlaylist(), queue()
155 member (精灵属性) member (sprite property) 语法: sprite(whichSprite).member 描述: Sprite属性:指定一个sprite的角色成员和角色。 Sprite的member属性不同于memberNum 属性,它用sprite的编号来确定在角色中的位置但并不是描述角色本身。另外member属性也不同于mouseMember属性和以前的castNum 属性,他们两者都不是用于描述sprite的角色。 当赋值给sprite的成员属性时,用以下格式之一: 设定全部成员和角色描述,(sprite(x).member = member(A, B) . 设定角色成员名称,(sprite(x).member = member ("MELODY "). 设定唯一的数字,它包括所有角色库和对应的mouseMember函数,(sprite(x).member = 132) . 如果你只是用角色成员的名称,Director找第一个角色成员,它的名称在当前的角色中。如果它的名称在角色中重复,只有第一个被用到。 在多个角色中,为了用编号规定角色的成员,用sprite的memberNum属性,它在角色中改变成员的位置时并不影响sprite的角色(set the memberNum of sprite x to 132).。 利用sprite成员的编号x,你可以从sprite的成员属性中决定sprite的memberNum 属性。你也可以利用词语如sprite x的成员名称或者rect得到其他角色成员的属性。 角色成员分配给sprite通道只是sprite的一个属性;其他属性随Score中通道的媒体对象的类型不同而变化。举例:如果你通过设置sprite的member属性,用一个空的形状(shape)去代替位图,那么这个形状sprite的属性不会自动改变,你可能看不见形状。如果你用视频来改变field sprite的成员,类似的sprite属性不匹配也会发生。虽然你可以通过sprite的类型属性来改变所有的sprite属性,但是更有用的方法还是用类似的角色成员去替代它。如:用位图角色成员去代替位图sprite。 这个属性可以是测试过的和赋值。 例: ..分配角色成员4的角色成员3给sprite 15 sprite(15).member = member(3, 4) ..下面是处理用sprite.members属性的mouseMember函数来查找鼠标是否在一个特定的sprite上面。 on exitFrame MM = the mouseMember target = sprite(1).member if target = MM then put "above the hotspot" go the frame end 参考 castLibNum, memberNum
156 memberNum 语法: sprite(whichSprite).memberNum 描述: Sprite性质:确定和特定的sprite whichsprite相连的角色成员(不是确定角色库)的位置。它的值是角色成员的编号;角色成员的角色没有指定。 在转换角色成员分配给sprite时,只要角色成员在同一个角色,memberNum属性就有用了。在不同角色中转换角色成员时,用sprite的member属性。Lingo赋值给当前一个的上一个sprite时,sprite必须是一个puppet(木偶化)。 当sprite被点击用来模仿标准按钮被点击时出现的翻转图像时,这个属性在交换角色成员时也是有用的。 同样你也可以根据电影中哪个角色成员被分配给sprite而采取行动。 当播放头不动时,你在脚本中设置此属性时,应该用updateStage命令来重画舞台。 这个属性可以检验和赋值。 例: 下面的表示在同一个角色中把分配给sprite 3的角色成员转换为角色成员编号 35。 sprite(3).memberNum = 35 下面的通过设置memberNum属性给Narrator’s的角色成员,把角色成员Narrator分配给sprite 10。Narrator和sprite的当前角色成员在同一个角色中。
sprite(10).memberNum = member("Narrator").number 下面的处理表示当按钮被点击或移开时,交换位图。假定按下按钮的艺术品紧跟着弹起按钮的艺术品。
on mouseDown upButton = sprite(the clickOn).memberNum downButton = upButton + 1 repeat while the stillDown if rollover(the clickOn) then sprite(the clickOn).memberNum = downButton else sprite(the clickOn).memberNum = upButton end if updateStage end repeat if rollover (the clickOn) then put "The button was activated" end 可参考castLib, member (sprite property), number (cast member property), member (keyword)
157 members 参考 number of members
158 memorySize 语法: the memorySize 描述: 系统属性;得到分配给程序的总的内存数,包括在用的和空闲的。这个属性是用于检查系统要求的最小内存,单位为比特(bytes)。 在Windows中,该值表示所有可用的物理内存。而在苹果机中,该值表示分配给应用程序的所有分区。 例: 下面是检查分配给机器的内存是否小于500K,如果是,显示警告。 if the memorySize < 500 * 1024 then alert "There is not enough memory to run this movie." 参考: freeBlock(), freeBytes(), ramNeeded(), size
159 menu 语法: menu: menuName itemName | script itemName | script ... or menu: menuName itemName | script itemName | script ... [more menus] 描述: 关键词;和installMenu命令一起,指定自定义菜单中的真正内容。域(Field)角色成员包含菜单定义;通过角色成员的名称或编号提及它们。 菜单关键词应紧跟在冒号、空格和菜单名称之后。在随后的行中,指定菜单的菜单项。当用户选择一个菜单项时,你可以通过把脚本放在竖号(|)后面来设置脚本并执行。一个新菜单是通过后面出现的关键字来定义的。 (注意,菜单在Shockwave上不可见)
在苹果机上,你可以用特殊字符来定义自定义菜单。这些特殊字符是区分大小写的。如:要使菜单项变粗体,字母B必须大写。 特殊符合必须放在菜单项名称的后面,竖号(|)的前面。你也可以用多个特殊字符来定义菜单项。用在跨平台的影片中,避免使用特殊字符格式,因为并不是所有的windows机器都支持的。 --------------------------------------------------- 符号 例子 描述 --------------------------------------------------- @ menu: @ * 在苹果机上,当你定义一个苹果菜单时,产生苹果符号并使菜单条能用 !Ã !ÃEasy Select *在苹果机上,使菜单打勾
| Open/O | go to 使脚本和菜单项关联. frame "Open" / Quit/Q 定义一个等价的命令词 ( Save( 使菜单项不可用. (- (- 在菜单中产生一个不可用的直线. --------------------------------------------------------------------- *确定只有在苹果机上可用的格式标记符 例: 这是CustomMenu2域角色成员的文本,它可以用来指定自定义菜单文件的内容。为了使这个菜单能运行,当影片运行时,用"installMenu member("CustomMenu2")"。转换菜单项运行在自定义处理句柄convetThis。
menu: File Open/O | go to frame "Open" Close/W | go to frame "Close" Convert/C | convertThis (-Quit/ Q | go to frame "Quit" 参考: installMenu, name (menu property), name (menu item property), number (menu items), checkMark, enabled, script 160 milliseconds 语法: the milliseconds (毫秒) 描述: 系统属性;返回当前时间的毫秒数(1/1000妙),从计算机启动开始计时。 例: 下面是通过把毫秒除以1000转换为秒,然后把秒除以60转换成分钟,然后赋值给变量currentMinutes(当前分钟)
currentSeconds = milliseconds/1000 currentMinutes = currentseconds/60 The resolution accuracy of the count is machine and operating system dependent. 这个计算精度跟机器和操作系统有关。
下面是处理通过计算毫秒,如果你工作的太久,它会产生警告。
on idle if the milliseconds > 1000 * 60 * 60 * 4 then alert "Take a break" end if end 参考: ticks, time(), timer
161 min 语法: list.min min(list) min (a1, a2, a3...) 描述: 函数;设定列表中的最小值。 例: 下面是处理赋值给变量vLowest出价[#Castle:600, #Shields:750, #Wang:230]中的最小值。然后结果插入到域(field)角色成员Sorry的内容中。
on findLowest bids vLowest = bids.min() member("Sorry").text = \ "We're sorry, your bid of $" & vLowest && "is not a winner!" end 参考: max() 162 missingFonts 语法: member(textCastMember).missingFonts 描述: 文本角色成员属性;它包含在文本中用到的字体但当前系统又不支持的字体名称。 开发者可以用来查看运行时某种特殊字体是否可用。 这个属性可以用于测试但不可以赋值。
参考: substituteFont 163 mod 语法: integerExpression1 mod integerExpression2 描述: 数学运算符;在两个整数中执行算术模运算。在运算中,integerExpression2除以integerExpression1。 整个表达式的返回结果就是除后的剩余整数。它总是和integerExpression1符号相同。 它是优先等级为4的算术运算。 例: 下面表示7除以4后剩余值显示在消息窗口中。 put 7 mod 4 The result is 3.
下面的处理设置所有奇数sprite的墨水复制效果,它通过编号0来指定。首先检查变量mySpritesprite中的sprite是否是奇数,通过把sprite编号除以2看它是否返回1,如果是表示奇数,然后处理器设置墨水效果复制。
on setInk repeat with mySprite = 1 to the lastChannel if (mySprite mod 2) = 1 then sprite(mySprite).ink = 0 else sprite(mySprite).ink = 8 end if end repeat end setInk 下面的处理在许多位图中有规律循环的sprite角色成员。
on exitFrame global gCounter -- These are sample values for bitmap cast member numbers theBitmaps = [2,3,4,5,6,7] -- Specify which sprite channel is affected theChannel = 1 -- This cycles through the list gCounter = 1 + (gCounter mod theBitmaps.count) sprite(theChannel).memberNum = theBitmaps[gCounter] go the frame end
164 modal 语法: window "window".modal the modal of window "window"(窗口的模式) 描述: 窗口属性;指定影片是否可以响应出现在通过window指定的窗口以外的事件。 当modal窗口的属性是真时,影片不响应窗口之外的事件。 当modal窗口的属性是假时,影片响应窗口之外的事件。 通过把modal窗口的属性设为真,你可以使窗口中某个影片成为用户唯一可以交互的影片。 注意这个属性甚至可以在作家环境中工作。如果你把它设为真,你也不可以和Director窗口交互了。 你总是可以Control+Alt+period(Windows) or Command+period (Macintosh)来关闭模式窗口。 例: 下面是使影片可以响应工具面板窗口以外的事件。 window("Tool Panel").modal = FALSE
165 modified 语法: member(whichCastMember).modified the modified of member whichCastMember 描述: 角色成员属性;指出由whichCastMember指定的角色成员从影片文件读入后是否有改动过。如果modified成员属性值是真(1)表示已改动过。否则表示没有改动过(0) 当影片中角色成员作为applet(Java的小程序)播放时,modified成员函数总是返回假。 例: 下面是检查角色成员Introduction从影片文件读入后是否修改过。 return member("Introduction").modified
166 modifiedBy 语法: member.modifiedBy the modifiedBy of member 描述: 角色成员属性;记录了最后修改角色成员的用户名称,用户名称信息由安装Director时提供。你可以通过Director的常规参数对话框修改此信息。 这个属性可以检验但不可以赋值。在跟踪和调整有多个作者的Director项目时,此属性有用。它也可以从监察窗(Inspector)的成员标签的性质中看到。 例: 下面显示最后修改角色成员1的用户名称。
put member(1).modifiedBy -- "Sam Sein" 参考: comments, creationDate, modifiedDate
167 modifiedDate 语法: member.modifiedDate the modifiedDate of member 描述: 角色成员属性;用作者机器上的系统时间,指出角色成员最后改动时的日期和时间。这个属性在跟踪和调整Director项目时有用。 这个属性可以检验但不可以赋值。它在监察窗的成员标签属性中和角色窗口列表中可以看到。 例: 下面显示角色成员1最后改动的日期。 put member(1).modifiedDate -- date( 1999, 12, 8 ) 参考: comments, creationDate, modifiedBy
168 mostRecentCuePoint 语法: sprite(whichSprite).mostRecentCuePoint the mostRecentCuePoint of sprite whichSprite sound(channelNum).mostRecentCuePoint the mostRecentCuePoint of sound channelNum 描述: 角色成员,声音通道和sprite属性;对于声音角色成员,QuickTime数字视频和支持线索点的Xtras,指出编号,它用来确定经过sprite或声音的最近的线索点(cue points)。它的值是线索点(cue points)的顺序号。如果没有线索点(cue points)经过,值为0。 对于声音通道来说,返回值适合于当前播放声音通道的声音角色成员。 Shockwave Audio (SWA)声音可以以sprites的形式出现在sprite通道中,但是它们在声音通道中播放声音。建议你用sprite通道编号而不是声音通道编号来指示SWA声音sprites。 例: 下面告诉消息窗口显示最近通过sprite通道1中sprite的线索点的编号。 put sprite(1).mostRecentCuePoint 下面返回声音通道2中当前播放声音的最近通过的线索点的顺序号。
put sound(2).mostRecentCuePoint 参考: cuePointNames, isPastCuePoint()
169 motionQuality 语法: sprite(whichQTVRSprite).motionQuality motionQuality of sprite whichQTVRSprite 描述: QuickTime VR sprite 属性;当用户点击和拖动the QuickTime VR sprite 时,用到codec(多媒体数字信号编解码器)质量。属性值可以是#minQuality,#maxQuality, or #normalQuality. 属性可以检验和赋值 例: 设置sprite1 的motionQuality值为#minQuality sprite(1).motionQuality = #minQuality 170 mouseChar 语法: the mouseChar 描述: 系统属性;用在域(field)sprite,当属性调用时,包含光标下面的字符的编号。计算从域的开始算起。如果鼠标不在域(field)上或者在域的??(in the gutter of a field),返回结果-1。 MouseChar的值在处理和循环中可以改变。如果处理或循环多次利用该值,通常只调用该属性一次并把它分配给一个局部变量。 例: 下面用来确定光标是否在域sprite上面,并改变域角色成员Instructions的内容为“Please point to a character” it is: if the mouseChar = -1 then member("Instructions").text = "Please point to a character." 例: 下面用来把特定域中光标下的字符分配给变量currentChar currentChar = member(the mouseMember).char[the mouseChar] 下面用来处理当sprite包含一个文本角色成员时高亮显示光标下的字符。
property spriteNum on mouseWithin me if sprite(spriteNum).member.type = #field then MC = the mousechar if MC < 1 then exit -- if over a border, final line, etc hilite char MC of field sprite(spriteNum).member else alert "Sorry, 'hilite' and 'mouseChar' are for fields." end 参考: mouseItem, mouseLine, mouseWord, char...of, number (characters) 171 on mouseDown (event handler) 语法: on mouseDown statement(s) end 描述: 系统消息和事件的处理,包含当鼠标按下时运行的声明。 当鼠标按下,Lingo依次寻找以下地方,对于on mouseDown处理:主要的事件处理,sprite脚本,角色成员脚本,框架脚本和影片脚本。如果Lingo一找到on mouseDown的处理,就停止搜索,除非处理中包括忽略命令,明确地忽略on mouseDown信息,只有这样才会继续往下一个地方搜索。 为了让影片按下鼠标按钮时有相同的反应,设置on mouseDownScript或将on mouseDown句柄放在影片的脚本中。 当用户按下鼠标按钮时,on MouseDown事件处理是放置Lingo可很好的控制闪现图像,引发声音效果或使sprites运动。 在哪里放置on mouseDown处理可以影响它运行。 为了把处理应用到一个特定的sprite,把它放到sprite的脚本中。 为了把处理应用到角色成员,通常把它放到角色成员的脚本中。 为了把处理应用到整个框架,把它放到框架的脚本中。 为了把处理应用到整个影片,把它放到影片的脚本中。 在Lingo检查到你想要重载处理之前的on mouseDown的地方放置其他选择,你可以重载on mouseDown处理。如:通过把on mouseDown处理放在sprite的脚本中,你可以重载角色成员的on mouseDown处理。如果用在行为中,参考下面的例子,这个事件忽略sprite脚本或框架脚本 例: 这个处理检查当按下触发后,用户是否点击在舞台上并发送播放头到另一帧 on mouseDown if the clickOn = 0 then go to frame "AddSum" end 当sprite被点击下后,分配给sprite的脚本处理开始播放声音。 on mouseDown puppetSound "Crickets" end 参考: clickOn, mouseDownScript, mouseUpScript
172 the mouseDown (system property) 语法: the mouseDown 描述: 系统属性;指出鼠标按钮是否被按下。 在Java中,当Lingo在一个重复的循环时,Director并不更新mouseDown属性。如果你想在applet的重复循环中检验mouseDown属性,apple将会挂起。 例: 当用户按下鼠标后,这个处理使影片产生哔哔声 on enterFrame repeat while the mouseDown = FALSE beep end repeat end 当用户按下鼠标后,这个陈述命令Lingo退出循环或正在进行的处理。 if the mouseDown then exit 参考: mouseH, the mouseUp (system property), mouseV, on mouseDown (event handler), on mouseUp (event handler) 173 mouseDownScript 语法: the mouseDownScript 描述: 系统属性;当鼠标按下后,指定Lingo执行。Lingo用引号引起,以字符串的形式,可以是一个简单描述,也可以调用脚本来执行处理。确定值为空(EMPTY),就意味着没有Lingo分配给mouseDownScript属性。当鼠标按下并且mouseDownScript被定义后,Lingo首先执行指定给mouseDownScript的命令。没有其他on mouseDown处理执行,除非指令中包括忽略(传递)命令,所以mouseDown信息可以被传递到影片中的其他物体。 在以前的Director中,设置mouseDownScript属性和keyDown命令产生相同的效果。 为了关闭指定给mouseDownScript的指令,设mouseDownScript为空(EMPTY)。 这个属性可以检验和赋值。 例: 在这个例子中,当用户按下鼠标按钮,播放头总是移到影片中的下一个标记处。
the mouseDownScript = "go next"
在这个例子中,当用户在舞台上任何地方点击,计算机就会发出哔哔声。
the mouseDownScript = "if the clickOn = 0 then beep"
下面的例子设置mouseDownScript到自定义处理myCustomHandler。在mouseDownScript中,Lingo的自定义处理必须用引号引起。
the mouseDownScript = "myCustomHandler" 参考: stopEvent, mouseUpScript, on mouseDown (event handler), on mouseUp (event handler)
174 randomSeed 语法: the randomSeed 描述: 系统属性;指定一个初值(种子值),通过函数random()产生随机数。 用相同的种子产生相同次序的随机数。这个属性在调试时有用。因为ticks(滴答声)值在并发的使用中不大可能被复制,所以利用ticks(滴答声)属性可以很容易的产生唯一的随机种子。 这个属性可以检验和赋值。 例: 下面把随机种子值显示在消息窗口。
put the randomSeed 参考: random(), ticks 175 ref 语法: chunkExpression.ref 描述: 文本块表达式属性;在文本角色成员中,它提供了一个简便的方法来指代块表达式。 例,如果没有指代,你不得不写成下面类似的语句。
member(whichTextMember).line[whichLine].word[firstWord..lastWord].font = "Palatino" member(whichTextMember).line[whichLine].word[firstWord..lastWord].fontSize = 36 member(whichTextMember).line[whichLine].word[firstWord..lastWord].fontStyle = [#bold] 但是如果用ref属性,你就可以用下面的方式指代同样的块。
myRef = member(whichTextMember).line[whichLine].word[firstWord..lastWord].ref
变量myRef现在是整个块表达式的速写。它允许下面类似的写法。
put myRef.font -- "Palatino"
或者你也可以象下面那样给块赋值。 myRef.fontSize = 18 myRef.fontStyle = [#italic]
你可以用参考的文本属性得到由参考指定的字符串。 put myRef.text 它将作用在实际的字符串数据而不是字符串的信息。 176 regPoint 语法: member(whichCastMember).regPoint the regPoint of member whichCastMember 描述: 角色成员属性;指定角色成员的注册点。注册点以点的水平坐标和垂直坐标显示(水平,垂直)。看不见的成员如声音等没有有用的regPoint属性。 你可以用regPoint属性使影片圈中单独的图形动起来,根据舞台中其他物体来改变影片圈的位置。 你也可以利用regPoint调整sprite中遮照的位置。 当闪影片角色成员第一次插入角色中时,它的注册点在角色的中心而它的centerRegPoint属性为真。如果随后你用regPoint属性改变注册点的位置,centerRegPoint自动改为假。 这个属性可以检验和赋值。 下面把位图角色成员Desk的注册点显示在消息窗口。 put member("Desk").regPoint 下面用列表中的值改变位图角色成员的注册点。 member("Desk").regPoint = point(300, 400) 参考: centerRegPoint, mask 177 regPointVertex 语法: vectorMember.regPointVertex the regPointVertex of vectorMember 描述: 角色成员属性;指出vectorCastMember的顶点是否被用成角色成员的注册点。如果值是0,用centerRegPoint和regPoint属性,注册点正常的被指定。如果值不是0,它指出被用作注册点的顶点的bertexList中的位置。属性centerRegPoint被设成假而regPoint被设成顶点的位置。 例: 下面根据第三顶点的位置为矢量图形角色成员Squiggle产生注册点。
member("squiggle").regPointVertex=3 centerRegPoint, regPoint
閑闪互动多媒体
|
 5D荣誉版主
职务:版主
等级:1
金币:10.0
发贴:177
注册:2000/9/17 8:56:36
|
#22001/7/27 10:26:45
OK,OK
|
 zhysea
职务:普通成员
等级:1
金币:0.0
发贴:76
注册:2001/2/8 20:11:01
|
#32001/11/2 14:16:20
1该只读属性是声音通道中的演员正在播放,(好象应该这么讲吧) 2RandomSeed:随机函数的种子数据
|
 steven5d
职务:普通成员
等级:1
金币:0.0
发贴:63
注册:2001/6/11 12:06:58
|
#42001/11/7 16:48:31
声音通道中正在播放的声音演员为只读属性(第一句,我的理解)
|
 netbird
职务:普通成员
等级:1
金币:0.0
发贴:119
注册:2000/10/24 15:49:53
|
#52001/11/8 9:48:30
seed 意为“种子”的意思 一般用在随机产生的参数上
|
 boy21cn
职务:普通成员
等级:1
金币:0.0
发贴:10
注册:2001/3/10 9:34:45
|
|
 5D荣誉斑竹
职务:普通成员
等级:4
金币:13.0
发贴:1504
注册:2000/11/14 12:10:50
|
#72001/12/30 10:24:54
根据上面的老兄做了点修改
154 member (声音属性) 语法: sound(channelNum).member 描述: 是正在声音通道中播放的声音角色成员的只读属性 ,如果没有播放声音,则返回NULL(空值) 例: 在消息窗口中播放在通道2中声音成员的名称 put sound(2).member -- (member 4 of castLib 1) 参考: getPlaylist(), queue()
155 member (精灵属性) member (sprite property) 语法: sprite(whichSprite).member 描述: Sprite属性:指定一个sprite的角色成员和角色。 Sprite的member属性不同于memberNum 属性,它用sprite的编号来确定在角色中的位置但并不是描述角色本身。另外member属性也不同于mouseMember属性和以前的castNum 属性,他们两者都不是用于描述sprite的角色。 当赋值给sprite的成员属性时,用以下格式之一: 设定全部成员和角色描述,(sprite(x).member = member(A, B) . 设定角色成员名称,(sprite(x).member = member ("MELODY "). 设定唯一的数字,它包括所有角色库和对应的mouseMember函数,(sprite(x).member = 132) . 如果你只是用角色成员的名称,Director找第一个角色成员,它的名称在当前的角色中。如果它的名称在角色中重复,只有第一个被用到。 在多个角色中,为了用编号规定角色的成员,用sprite的memberNum属性,它在角色中改变成员的位置时并不影响sprite的角色(set the memberNum of sprite x to 132).。 利用sprite成员的编号x,你可以从sprite的成员属性中决定sprite的memberNum 属性。你也可以利用词语如sprite x的成员名称或者rect得到其他角色成员的属性。 角色成员分配给sprite通道只是sprite的一个属性;其他属性随Score中通道的媒体对象的类型不同而变化。举例:如果你通过设置sprite的member属性,用一个空的形状(shape)去代替位图,那么这个形状sprite的属性不会自动改变,你可能看不见形状。如果你用视频来改变field sprite的成员,类似的sprite属性不匹配也会发生。虽然你可以通过sprite的类型属性来改变所有的sprite属性,但是更有用的方法还是用类似的角色成员去替代它。如:用位图角色成员去代替位图sprite。 这个属性可以是测试过的和赋值。 例: ..分配角色成员4的角色成员3给sprite 15 sprite(15).member = member(3, 4) ..下面是处理用sprite.members属性的mouseMember函数来查找鼠标是否在一个特定的sprite上面。 on exitFrame MM = the mouseMember target = sprite(1).member if target = MM then put "above the hotspot" go the frame end 参考 castLibNum, memberNum
156 memberNum 语法: sprite(whichSprite).memberNum 描述: Sprite性质:确定和特定的sprite whichsprite相连的角色成员(不是确定角色库)的位置。它的值是角色成员的编号;角色成员的角色没有指定。 在转换角色成员分配给sprite时,只要角色成员在同一个角色,memberNum属性就有用了。在不同角色中转换角色成员时,用sprite的member属性。Lingo赋值给当前一个的上一个sprite时,sprite必须是一个puppet(木偶化)。 当sprite被点击用来模仿标准按钮被点击时出现的翻转图像时,这个属性在交换角色成员时也是有用的。 同样你也可以根据电影中哪个角色成员被分配给sprite而采取行动。 当播放头不动时,你在脚本中设置此属性时,应该用updateStage命令来重画舞台。 这个属性可以检验和赋值。 例: 下面的表示在同一个角色中把分配给sprite 3的角色成员转换为角色成员编号 35。 sprite(3).memberNum = 35 下面的通过设置memberNum属性给Narrator’s的角色成员,把角色成员Narrator分配给sprite 10。Narrator和sprite的当前角色成员在同一个角色中。
sprite(10).memberNum = member("Narrator").number 下面的处理表示当按钮被点击或移开时,交换位图。假定按下按钮的艺术品紧跟着弹起按钮的艺术品。
on mouseDown upButton = sprite(the clickOn).memberNum downButton = upButton + 1 repeat while the stillDown if rollover(the clickOn) then sprite(the clickOn).memberNum = downButton else sprite(the clickOn).memberNum = upButton end if updateStage end repeat if rollover (the clickOn) then put "The button was activated" end 可参考castLib, member (sprite property), number (cast member property), member (keyword)
157 members 参考 number of members
158 memorySize 语法: the memorySize 描述: 系统属性;得到分配给程序的总的内存数,包括在用的和空闲的。这个属性是用于检查系统要求的最小内存,单位为比特(bytes)。 在Windows中,该值表示所有可用的物理内存。而在苹果机中,该值表示分配给应用程序的所有分区。 例: 下面是检查分配给机器的内存是否小于500K,如果是,显示警告。 if the memorySize < 500 * 1024 then alert "There is not enough memory to run this movie." 参考: freeBlock(), freeBytes(), ramNeeded(), size
159 menu 语法: menu: menuName itemName | script itemName | script ... or menu: menuName itemName | script itemName | script ... [more menus] 描述: 关键词;和installMenu命令一起,指定自定义菜单中的真正内容。域(Field)角色成员包含菜单定义;通过角色成员的名称或编号提及它们。 菜单关键词应紧跟在冒号、空格和菜单名称之后。在随后的行中,指定菜单的菜单项。当用户选择一个菜单项时,你可以通过把脚本放在竖号(|)后面来设置脚本并执行。一个新菜单是通过后面出现的关键字来定义的。 (注意,菜单在Shockwave上不可见)
在苹果机上,你可以用特殊字符来定义自定义菜单。这些特殊字符是区分大小写的。如:要使菜单项变粗体,字母B必须大写。 特殊符合必须放在菜单项名称的后面,竖号(|)的前面。你也可以用多个特殊字符来定义菜单项。用在跨平台的影片中,避免使用特殊字符格式,因为并不是所有的windows机器都支持的。 --------------------------------------------------- 符号 例子 描述 --------------------------------------------------- @ menu: @ * 在苹果机上,当你定义一个苹果菜单时,产生苹果符号并使菜单条能用 !Ã !ÃEasy Select *在苹果机上,使菜单打勾
| Open/O | go to 使脚本和菜单项关联. frame "Open" / Quit/Q 定义一个等价的命令词 ( Save( 使菜单项不可用. (- (- 在菜单中产生一个不可用的直线. --------------------------------------------------------------------- *确定只有在苹果机上可用的格式标记符 例: 这是CustomMenu2域角色成员的文本,它可以用来指定自定义菜单文件的内容。为了使这个菜单能运行,当影片运行时,用"installMenu member("CustomMenu2")"。转换菜单项运行在自定义处理句柄convetThis。
menu: File Open/O | go to frame "Open" Close/W | go to frame "Close" Convert/C | convertThis (-Quit/ Q | go to frame "Quit" 参考: installMenu, name (menu property), name (menu item property), number (menu items), checkMark, enabled, script 160 milliseconds 语法: the milliseconds (毫秒) 描述: 系统属性;返回当前时间的毫秒数(1/1000妙),从计算机启动开始计时。 例: 下面是通过把毫秒除以1000转换为秒,然后把秒除以60转换成分钟,然后赋值给变量currentMinutes(当前分钟)
currentSeconds = milliseconds/1000 currentMinutes = currentseconds/60 The resolution accuracy of the count is machine and operating system dependent. 这个计算精度跟机器和操作系统有关。
下面是处理通过计算毫秒,如果你工作的太久,它会产生警告。
on idle if the milliseconds > 1000 * 60 * 60 * 4 then alert "Take a break" end if end 参考: ticks, time(), timer
161 min 语法: list.min min(list) min (a1, a2, a3...) 描述: 函数;设定列表中的最小值。 例: 下面是处理赋值给变量vLowest出价[#Castle:600, #Shields:750, #Wang:230]中的最小值。然后结果插入到域(field)角色成员Sorry的内容中。
on findLowest bids vLowest = bids.min() member("Sorry").text = \ "We're sorry, your bid of $" & vLowest && "is not a winner!" end 参考: max() 162 missingFonts 语法: member(textCastMember).missingFonts 描述: 文本角色成员属性;它包含在文本中用到的字体但当前系统又不支持的字体名称。 开发者可以用来查看运行时某种特殊字体是否可用。 这个属性可以用于测试但不可以赋值。
参考: substituteFont 163 mod 语法: integerExpression1 mod integerExpression2 描述: 数学运算符;在两个整数中执行算术模运算。在运算中,integerExpression2除以integerExpression1。 整个表达式的返回结果就是除后的剩余整数。它总是和integerExpression1符号相同。 它是优先等级为4的算术运算。 例: 下面表示7除以4后剩余值显示在消息窗口中。 put 7 mod 4 The result is 3.
下面的处理设置所有奇数sprite的墨水复制效果,它通过编号0来指定。首先检查变量mySpritesprite中的sprite是否是奇数,通过把sprite编号除以2看它是否返回1,如果是表示奇数,然后处理器设置墨水效果复制。
on setInk repeat with mySprite = 1 to the lastChannel if (mySprite mod 2) = 1 then sprite(mySprite).ink = 0 else sprite(mySprite).ink = 8 end if end repeat end setInk 下面的处理在许多位图中有规律循环的sprite角色成员。
on exitFrame global gCounter -- These are sample values for bitmap cast member numbers theBitmaps = [2,3,4,5,6,7] -- Specify which sprite channel is affected theChannel = 1 -- This cycles through the list gCounter = 1 + (gCounter mod theBitmaps.count) sprite(theChannel).memberNum = theBitmaps[gCounter] go the frame end
164 modal 语法: window "window".modal the modal of window "window"(窗口的模式) 描述: 窗口属性;指定影片是否可以响应出现在通过window指定的窗口以外的事件。 当modal窗口的属性是真时,影片不响应窗口之外的事件。 当modal窗口的属性是假时,影片响应窗口之外的事件。 通过把modal窗口的属性设为真,你可以使窗口中某个影片成为用户唯一可以交互的影片。 注意这个属性甚至可以在作家环境中工作。如果你把它设为真,你也不可以和Director窗口交互了。 你总是可以Control+Alt+period(Windows) or Command+period (Macintosh)来关闭模式窗口。 例: 下面是使影片可以响应工具面板窗口以外的事件。 window("Tool Panel").modal = FALSE
165 modified 语法: member(whichCastMember).modified the modified of member whichCastMember 描述: 角色成员属性;指出由whichCastMember指定的角色成员从影片文件读入后是否有改动过。如果modified成员属性值是真(1)表示已改动过。否则表示没有改动过(0) 当影片中角色成员作为applet(Java的小程序)播放时,modified成员函数总是返回假。 例: 下面是检查角色成员Introduction从影片文件读入后是否修改过。 return member("Introduction").modified
166 modifiedBy 语法: member.modifiedBy the modifiedBy of member 描述: 角色成员属性;记录了最后修改角色成员的用户名称,用户名称信息由安装Director时提供。你可以通过Director的常规参数对话框修改此信息。 这个属性可以检验但不可以赋值。在跟踪和调整有多个作者的Director项目时,此属性有用。它也可以从监察窗(Inspector)的成员标签的性质中看到。 例: 下面显示最后修改角色成员1的用户名称。
put member(1).modifiedBy -- "Sam Sein" 参考: comments, creationDate, modifiedDate
167 modifiedDate 语法: member.modifiedDate the modifiedDate of member 描述: 角色成员属性;用作者机器上的系统时间,指出角色成员最后改动时的日期和时间。这个属性在跟踪和调整Director项目时有用。 这个属性可以检验但不可以赋值。它在监察窗的成员标签属性中和角色窗口列表中可以看到。 例: 下面显示角色成员1最后改动的日期。 put member(1).modifiedDate -- date( 1999, 12, 8 ) 参考: comments, creationDate, modifiedBy
168 mostRecentCuePoint 语法: sprite(whichSprite).mostRecentCuePoint the mostRecentCuePoint of sprite whichSprite sound(channelNum).mostRecentCuePoint the mostRecentCuePoint of sound channelNum 描述: 角色成员,声音通道和sprite属性;对于声音角色成员,QuickTime数字视频和支持线索点的Xtras,指出编号,它用来确定经过sprite或声音的最近的线索点(cue points)。它的值是线索点(cue points)的顺序号。如果没有线索点(cue points)经过,值为0。 对于声音通道来说,返回值适合于当前播放声音通道的声音角色成员。 Shockwave Audio (SWA)声音可以以sprites的形式出现在sprite通道中,但是它们在声音通道中播放声音。建议你用sprite通道编号而不是声音通道编号来指示SWA声音sprites。 例: 下面告诉消息窗口显示最近通过sprite通道1中sprite的线索点的编号。 put sprite(1).mostRecentCuePoint 下面返回声音通道2中当前播放声音的最近通过的线索点的顺序号。
put sound(2).mostRecentCuePoint 参考: cuePointNames, isPastCuePoint()
169 motionQuality 语法: sprite(whichQTVRSprite).motionQuality motionQuality of sprite whichQTVRSprite 描述: QuickTime VR sprite 属性;当用户点击和拖动the QuickTime VR sprite 时,用到codec(多媒体数字信号编解码器)质量。属性值可以是#minQuality,#maxQuality, or #normalQuality. 属性可以检验和赋值 例: 设置sprite1 的motionQuality值为#minQuality sprite(1).motionQuality = #minQuality 170 mouseChar 语法: the mouseChar 描述: 系统属性;用在域(field)sprite,当属性调用时,包含光标下面的字符的编号。计算从域的开始算起。如果鼠标不在域(field)上或者在域的??(in the gutter of a field),返回结果-1。 MouseChar的值在处理和循环中可以改变。如果处理或循环多次利用该值,通常只调用该属性一次并把它分配给一个局部变量。 例: 下面用来确定光标是否在域sprite上面,并改变域角色成员Instructions的内容为“Please point to a character” it is: if the mouseChar = -1 then member("Instructions").text = "Please point to a character." 例: 下面用来把特定域中光标下的字符分配给变量currentChar currentChar = member(the mouseMember).char[the mouseChar] 下面用来处理当sprite包含一个文本角色成员时高亮显示光标下的字符。
property spriteNum on mouseWithin me if sprite(spriteNum).member.type = #field then MC = the mousechar if MC < 1 then exit -- if over a border, final line, etc hilite char MC of field sprite(spriteNum).member else alert "Sorry, 'hilite' and 'mouseChar' are for fields." end 参考: mouseItem, mouseLine, mouseWord, char...of, number (characters) 171 on mouseDown (event handler) 语法: on mouseDown statement(s) end 描述: 系统消息和事件的处理,包含当鼠标按下时运行的声明。 当鼠标按下,Lingo依次寻找以下地方,对于on mouseDown处理:主要的事件处理,sprite脚本,角色成员脚本,框架脚本和影片脚本。如果Lingo一找到on mouseDown的处理,就停止搜索,除非处理中包括忽略命令,明确地忽略on mouseDown信息,只有这样才会继续往下一个地方搜索。 为了让影片按下鼠标按钮时有相同的反应,设置on mouseDownScript或将on mouseDown句柄放在影片的脚本中。 当用户按下鼠标按钮时,on MouseDown事件处理是放置Lingo可很好的控制闪现图像,引发声音效果或使sprites运动。 在哪里放置on mouseDown处理可以影响它运行。 为了把处理应用到一个特定的sprite,把它放到sprite的脚本中。 为了把处理应用到角色成员,通常把它放到角色成员的脚本中。 为了把处理应用到整个框架,把它放到框架的脚本中。 为了把处理应用到整个影片,把它放到影片的脚本中。 在Lingo检查到你想要重载处理之前的on mouseDown的地方放置其他选择,你可以重载on mouseDown处理。如:通过把on mouseDown处理放在sprite的脚本中,你可以重载角色成员的on mouseDown处理。如果用在行为中,参考下面的例子,这个事件忽略sprite脚本或框架脚本 例: 这个处理检查当按下触发后,用户是否点击在舞台上并发送播放头到另一帧 on mouseDown if the clickOn = 0 then go to frame "AddSum" end 当sprite被点击下后,分配给sprite的脚本处理开始播放声音。 on mouseDown puppetSound "Crickets" end 参考: clickOn, mouseDownScript, mouseUpScript
172 the mouseDown (system property) 语法: the mouseDown 描述: 系统属性;指出鼠标按钮是否被按下。 在Java中,当Lingo在一个重复的循环时,Director并不更新mouseDown属性。如果你想在applet的重复循环中检验mouseDown属性,apple将会挂起。 例: 当用户按下鼠标后,这个处理使影片产生哔哔声 on enterFrame repeat while the mouseDown = FALSE beep end repeat end 当用户按下鼠标后,这个陈述命令Lingo退出循环或正在进行的处理。 if the mouseDown then exit 参考: mouseH, the mouseUp (system property), mouseV, on mouseDown (event handler), on mouseUp (event handler) 173 mouseDownScript 语法: the mouseDownScript 描述: 系统属性;当鼠标按下后,指定Lingo执行。Lingo用引号引起,以字符串的形式,可以是一个简单描述,也可以调用脚本来执行处理。确定值为空(EMPTY),就意味着没有Lingo分配给mouseDownScript属性。当鼠标按下并且mouseDownScript被定义后,Lingo首先执行指定给mouseDownScript的命令。没有其他on mouseDown处理执行,除非指令中包括忽略(传递)命令,所以mouseDown信息可以被传递到影片中的其他物体。 在以前的Director中,设置mouseDownScript属性和keyDown命令产生相同的效果。 为了关闭指定给mouseDownScript的指令,设mouseDownScript为空(EMPTY)。 这个属性可以检验和赋值。 例: 在这个例子中,当用户按下鼠标按钮,播放头总是移到影片中的下一个标记处。
the mouseDownScript = "go next"
在这个例子中,当用户在舞台上任何地方点击,计算机就会发出哔哔声。
the mouseDownScript = "if the clickOn = 0 then beep"
下面的例子设置mouseDownScript到自定义处理myCustomHandler。在mouseDownScript中,Lingo的自定义处理必须用引号引起。
the mouseDownScript = "myCustomHandler" 参考: stopEvent, mouseUpScript, on mouseDown (event handler), on mouseUp (event handler)
174 randomSeed 语法: the randomSeed 描述: 系统属性;指定一个初值(种子值),通过函数random()产生随机数。 用相同的种子产生相同次序的随机数。这个属性在调试时有用。因为ticks(滴答声)值在并发的使用中不大可能被复制,所以利用ticks(滴答声)属性可以很容易的产生唯一的随机种子。 这个属性可以检验和赋值。 例: 下面把随机种子值显示在消息窗口。
put the randomSeed 参考: random(), ticks 175 ref 语法: chunkExpression.ref 描述: 文本块表达式属性;在文本角色成员中,它提供了一个简便的方法来指代块表达式。 例,如果没有指代,你不得不写成下面类似的语句。
member(whichTextMember).line[whichLine].word[firstWord..lastWord].font = "Palatino" member(whichTextMember).line[whichLine].word[firstWord..lastWord].fontSize = 36 member(whichTextMember).line[whichLine].word[firstWord..lastWord].fontStyle = [#bold] 但是如果用ref属性,你就可以用下面的方式指代同样的块。
myRef = member(whichTextMember).line[whichLine].word[firstWord..lastWord].ref
变量myRef现在是整个块表达式的速写。它允许下面类似的写法。
put myRef.font -- "Palatino"
或者你也可以象下面那样给块赋值。 myRef.fontSize = 18 myRef.fontStyle = [#italic]
你可以用参考的文本属性得到由参考指定的字符串。 put myRef.text 它将作用在实际的字符串数据而不是字符串的信息。 176 regPoint 语法: member(whichCastMember).regPoint the regPoint of member whichCastMember 描述: 角色成员属性;指定角色成员的注册点。注册点以点的水平坐标和垂直坐标显示(水平,垂直)。看不见的成员如声音等没有有用的regPoint属性。 你可以用regPoint属性使影片圈中单独的图形动起来,根据舞台中其他物体来改变影片圈的位置。 你也可以利用regPoint调整sprite中遮照的位置。 当闪影片角色成员第一次插入角色中时,它的注册点在角色的中心而它的centerRegPoint属性为真。如果随后你用regPoint属性改变注册点的位置,centerRegPoint自动改为假。 这个属性可以检验和赋值。 下面把位图角色成员Desk的注册点显示在消息窗口。 put member("Desk").regPoint 下面用列表中的值改变位图角色成员的注册点。 member("Desk").regPoint = point(300, 400) 参考: centerRegPoint, mask 177 regPointVertex 语法: vectorMember.regPointVertex the regPointVertex of vectorMember 描述: 角色成员属性;指出vectorCastMember的顶点是否被用成角色成员的注册点。如果值是0,用centerRegPoint和regPoint属性,注册点正常的被指定。如果值不是0,它指出被用作注册点的顶点的bertexList中的位置。属性centerRegPoint被设成假而regPoint被设成顶点的位置。 例: 下面根据第三顶点的位置为矢量图形角色成员Squiggle产生注册点。
member("squiggle").regPointVertex=3 centerRegPoint, regPoint
閑闪互动多媒体
|