主题:  第7组:frameSound1 ~ gradietType

freda

职务:普通成员
等级:1
金币:0.0
发贴:45
注册:2000/9/27 10:04:07
#12000/12/6 18:25:48
1。
frameSound1
语法:    
the frameSound1
描述:    
帧属性; 确定被分配到当前帧的第一号通道的演员号。
此属性可以被测试和设定。此属性也在剪辑室录制过程中(Score recording session)被设定。

实例:
作为剪辑室录制过程中的一部分,如下声明分配一个叫做“Jazz”的声音演员到第一号声音通道中。
he frameSound1 = member("Jazz").number


-------------------------------------------------------------------------------------------------------------------
2。
frameSound2
语法:    
the frameSound2
描述:
帧属性; 确定被分配到当前帧的第二号通道的演员号。
此属性可以被测试和设定。此属性也在剪辑室录制过程中(Score recording session)被设定。
实例:
作为剪辑室录制过程中的一部分,如下声明分配一个叫做“Jazz”的声音演员到第二号声音通道中。
the frameSound2 = member("Jazz").number


-----------------------------------------------------------------------------------------------------------------------

3。framesToHMS()
语法:
    framesToHMS(frames, tempo, dropFrame, fractionalSeconds)
    描述:
函数;    将此特殊贞数转换成相等的“几小时,几分钟,几秒”形式。 这个函数对预测实际影片播放时间或控制视频播放设备很有用。
Frames表示指定的贞数。
    Tempo表示指定的播放节排(贞/秒)。

    DropFrame代表彩色电视NTSC贞速率,此速率不是准确的每秒30贞并且只有在FPS设置为30贞/秒时才有意义。通常,这个变量被设为FALSE.。
    FractionalSeconds决定剩余贞数是否被转化成近似多少秒(当设为TRUE时),否则返回一个多少贞的整数(当设为FALSE时)。
作为结果字符串使用的形式为: sHH:MM:SS.FFD, 其中:

s    如果时间小于零使用一个字符,否则时间大于等于零就空一格。
HH    Hours.
MM    Minutes.
SS    Seconds.
FF    fractionalSeconds 设为TRUE时,指几分之几秒否则(当fractionalSeconds 设为 FALSE时)为贞数。
D    dropFrame 设为TRUE时用一个 "d",设为 FALSE时空一个。

实例:
这个声明转化2710贞,30贞/秒的影片dropFrame 和 fractionalSeconds 变量都设为FALSE。

put framesToHMS(2710, 30, FALSE, FALSE)
-- " 00:01:30.10 "

参见:
    HMStoFrames()

-----------------------------------------------------------------------------------------------------------------------
4。
frameTempo    
语法:
    the frameTempo
    描述:
    帧属性; 指示赋值给当前帧的tempo(节拍/播放频率)。
        此属性可以被测试。也可在剪辑室录制过程中被设置。

实例:
这句声明检测当前帧所使用的tempo,此tempo 值为15帧/秒。
(在Message 窗口中输入并运行)
put the frameTempo
(结果为)
-- 15
(即:播放频率为15帧/秒)
参见    puppetTempo

5。
FrameTransition
语法:
    the frameTransition
描述:
帧属性;    指定某transition(过渡/转场)演员号给当前帧。
此属性可在剪辑室录制过程中指定转场效果。

实例:
当被用在剪辑室录制过程中时,此声明使那个“Fog”转场演员添加到当前正在录制的帧上。
set the frameTransition to member "Fog"
(此句可放在剪辑室录制过程
BeginRecording
……
endRecording
中使用。)
TextText
------------------------------------------------------------------------------------------------------------------------------------------------------------

6。
freeBlock()    
语法:
    the freeBlock
    描述:
函数;指示最大邻接自由内存块的大小,以字节(bytes)计算。1千字节(K) 是1024个字节。1 兆 (MB) is 1024 千字节。. 导入一个演员至少需要和演员本身一样大的内存块。
实例:    
这段声明判断是否最大邻接自由内存块小于十K,如果小于则显示一个警告(没有足够内存):

if (the freeBlock < (10 * 1024)) then alert "Not enough memory!"

参见:
    freeBytes(),memorySize, ramNeeded(),size
--------------------------------------------------------------------------------------------------------------------------------------------------------

7.
freeBytes()
语法:    the freeBytes
    描述:    函数;指示自由内存总数,这些内存可以不是相临的。1千字节(K) 是1024个字节。1 兆 (MB) is 1024 千字节。

此函数与自由内存块(freeBlock)不同,因为它报告全部自由内存,而不仅仅是邻接的内存。
对于苹果机(Macintosh),在director参数选择的“总体”选项中选择使用系统临时内存或在生成放映机的选项对话框中通知自由内存函数返回全部自由内存以供应用程序使用。此数值等于应用程序分配显示在获取信息对话框和最大未用内存块值在“关于此苹果机的对话框中”。

实例:
这段声明检测可提供的内存是否大于200K并且播放一个彩色电影,如果大于的话:

if (the freeBytes > (200 * 1024)) then play movie "colorMovie"

参见:
    freeBlock(), memorySize, objectP(), ramNeeded(), size
---------------------------------------------------------------------------------------------------------------------------------------------------

8.
frontWindow
语法:
    the frontWindow
描述:
系统属性;在窗口中的影片 (MIAW)技术中指当前屏幕上最前面的窗口。 当舞台是最前面的窗口时,最前方窗口是the Stage。当媒体编辑器或浮动面板在最前方时,最前窗口返回VOID。

此属性可被测试但不能设置。

实例:
这段声明决定是否那个“Music”窗口是当前最前方窗口,并且如果它是最前方窗口,就将“Try this”窗口带到最前方:
if the frontWindow = "Music" then window("Try This").moveToFront

参见:
activeWindow, on activateWindow, on deactivateWindow, moveToFront

编辑历史:[这消息被freda编辑过(编辑时间2000-12-07 11:47:33)]
[这消息被enterctrl编辑过(编辑时间2000-12-10 01:27:14)]
[这消息被校对组编辑过(编辑时间2000-12-10 01:29:44)]
[这消息被校对组编辑过(编辑时间2000-12-10 01:30:57)]
[这消息被freda编辑过(编辑时间2000-12-11 11:59:32)]


BBDD

职务:普通成员
等级:1
金币:0.0
发贴:80
注册:2000/12/3 20:10:18
#22000/12/6 19:08:17
score不要翻译出来,.

还有些错别字

应该是"帧"

暂时这点



freda

职务:普通成员
等级:1
金币:0.0
发贴:45
注册:2000/9/27 10:04:07
#32000/12/7 11:57:07
谢谢BBDD,
“帧”字,译时为了赶时间,本想最后统一替换,忘了,抱歉!
已改过!
score 因为是和后面的recording session一起的,所以一起翻译了!



BBDD

职务:普通成员
等级:1
金币:0.0
发贴:80
注册:2000/12/3 20:10:18
#42000/12/7 12:04:36
"确定被分配到当前祯的第一号通道的演员号。"

--->帧

还有就是既然你两个地方用E文原文了,那么其他地方也应该用
剪辑室录制过程中(Score recording session)



freda

职务:普通成员
等级:1
金币:0.0
发贴:45
注册:2000/9/27 10:04:07
#52000/12/11 12:01:33
----------About "G" Lingo-----------From Freda-----------------
1.    getaProp    
语法:
    propertyList.propertyName
getaProp(list, item)
list[listPosition]
propertyList [ #propertyName ]
propertyList [ "propertyName" ]

描述:
    列表命令;对于线性列表和属性列表,确定被条目所指定的与条目相结合的值,被列表所指定的在列表中的位置或属性名。
当列表为线性列表时,用数字取代在列表中条目的位置(listPosition),结果为在此处上的值。
    当列表为属性列表时,用列表中作为属性名(propertyName)的属性来取代条目。
当所指定的值不在列表中时获得属性(getaProp)命令返回空值( VOID)。
当用在线性列表中时getaProp命令与getAt命令有同样的功能。

实例:
这个声明确定了在ages这个属性列表中的#joe属性相关连的值,此属性列表包含以下四个属性,#john:10, #joe:12, #cheryl:15, #barbara:22:

put getaProp(ages, #joe)
结果是:12,因为这个值与属性#joe相结合。.

实例:    使用括号方式存取相同的列表也可以得到相同的结果:
put ages[#joe]
结果也是:12。

实例:如果你想得到列表中某一特定位置的值,你也可以用括号的方式。为得到列表中与第三个属性相结合的第三个值,使用这一语法:
put ages[3]
结果为:
-- 15

注释:如果属性不存在你又使用的是括号方式,则会出现脚本错误,不象getAProp命令那样,当一个属性不存在时返回“空”(VOID)。
参见:    getAt, getOne(),getProp(),setaProp, setAt
-------------------------------------------------------
2. GetAt
语法:    getAt(list, position)

list [position]

描述:列表命令;识别在指定列表中指定位置的某项目的值;如果列表函有比指定位置小的元素,会出现脚本错误。
GetAt命令在线性列表和属性列表中均可使用。 就象getaProp命令对线性列表功能一样有同样的功能。
此命令对于从另一个列表中取出一个列表是非常有用的,如: deskTopRectList.

实例:    这段声明是在信息窗口中显示列表[10, 12, 15, 22]中第3项的值。
put getAt(answers, 3)
-- 15

实例:用中括号方式得到同样的结果:
put answers[3]
-- 15

实例:此例在函有两个指定名称、部门和雇员号信息的列表中取出第一个款目,然后在取出的新列表中取出第2个值,确定雇员列表中第一个人的部门。列表的格式是 [[揇ennis? 揷onsulting? 510], [揝herry? 揇istribution? 973]],并且此列表被称为employeeInfoList。

firstPerson = getAt(employeeInfoList, 1)
put firstPerson
-- ["Dennis", "consulting", 510]
firstPersonDept = getAt(firstPerson, 2)
put firstPersonDept
-- "consulting"

实例:也可以一个套一个,而不必给中间步赋值的方式使用getAt命令。这种方式可能更难读写,但不冗长。
firstPersonDept = getAt(getAt(employeeInfoList, 1), 2)
put firstPersonDept
-- "consulting"

实例 你也可用中括号的方式:
firstPerson = employeeInfoList[1]
put firstPerson
-- ["Dennis", "consulting", 510]
firstPersonDept = firstPerson[2]
put firstPersonDept
-- "consulting"

实例 对于getAt, 中括号可以连在一起用:
firstPersonDept = employeeInfoList[1][2]

参见    getaProp, setaProp, setAt

----------------------------------------------------------
3. on getBehaviorDescription    
语法    
on getBehaviorDescription
声明
end

描述     系统信息和事件处理程序;当行为被选择时显示在行为监视器中所包含的Lingo字符串

此描述字符串是可选的。
当行为监视器打开时,Director发送行为描述信息(getBehaviorDescription)到此附着在sprite 上的行为中。把getBehaviorDescription 处理事件放到一个行为中。
此处理事件可以包含嵌入的回行字符(Return)的多行描述格式。
实例     此声明显示描述窗口中的"Vertical Multiline textField Scrollbar"
on getBehaviorDescription
    return "Vertical Multiline textField Scrollbar"
end

参见    on getPropertyDescriptionList, on getBehaviorTooltip, on runPropertyDialog
-----------------------------------------------------------------------------------------------------------------
4. on getBehaviorTooltip
语法
    on getBehaviorTooltip
声明
end

描述 系统信息和事件处理程序;包含在行为库面板中显示的工具提示的字符串Lingo 。

当光标停留在行为库中的某个脚本上时,Director发送“得到行为工具提示”(getBehaviorTooltip)信息到脚本中。将“得到行为工具提示”信息处理程序放在行为中。此处理程序是可选的。如果没有提供处理程序, cast演员的名字会显示在工具提示中。
处理程序包含代表多行格式所嵌入的回行符(RETURN)。

实例     此声明在描述窗口中显示"Jigsaw puzzle piece"。

on getBehaviorTooltip
    return "Jigsaw puzzle piece"
end

参见    on getPropertyDescriptionList, on getBehaviorDescription, on runPropertyDialog
-----------------------------
5.    getError()
语法:    member(whichSWAmember).getError()

getError(member whichSWAmember)
member(whichFlashmember).getError()
getError(member whichFlashmember)

描述    :函数;对于Shockwave Audio (SWA)或 Flash演员, 当演员读入内存并返回一个值时,预示着是否有一个错误出现。

Shockwave Audio 演员有下述可能的 getError() 整数值并有相应的getErrorString() 信息:
getError() value    getErrorString()
message
0    确定
1    内存
2    网络
3    回放设备
99    其它
Flash 影片演员可能出现如下错误(getError)值:

FALSE 出错
    #memory 内存不足无法导入演员。
    #fileNotFound没有找到包含演员的文件。
    #network 预防导入演员时的网络错误。
    #fileFormat文件已找到但出现文件类型错误,或文件读取时出错。
    #其它 发生其它错误。

当演员读入内存时发生一个错误, Director设置演员状态属性为-1。用getError函数测定出现错误的类型。

实例     这个处理程序用getError去测定是否出现一个涉及Shockwave Audio 演员Norma Desmond Speaks的错误,如果出现将错误显示在一个域中:

on exitFrame
    if member("Norma Desmond Speaks").getError() <> 0 then
        member("Display Error Name").text = member("Norma Desmond \ Speaks").getErrorString()
    end if

end

实例     这个处理程序检查一个所看到的Flash演员Dali在读入内存时是否出现错误。如果出现错误,并且是内存错误,脚本用卸载演员(unloadCast)命令试图释放一些内存; 然后播放头跳到Director 影片中标记为Artists 的那帧, 那是此Flash 影片sprite 第一次出现的地方, 所以Director 可以再次试图导入并播放Flash 影片。如果出现其它内存溢出错误,脚本将回到标记为“Sorry”的那帧, 并解释无法播放所需的Flash 影片。

on CheckFlashStatus
    errorCheck = member("Dali").getError()
    if errorCheck <> 0 then
        if errorCheck = #memory then
            member("Dali").clearError()
            unloadCast
            go to frame ("Artists")
        else
            go to frame ("Sorry")
        end if
    end if

end

参见    clearError, getErrorString(),state
-------------

6.    getErrorString()    
语法:
    member(whichCastMember). getErrorString()

getErrorString(member whichCastMember)

描述     函数; 对于Shockwave Audio (SWA) 演员, 返回那个错误信息的字符串,相应的错误值是由getError() 函数返回的。

可能的getError()整数值和对应的getErrorString()信息是:

getError() 值    getErrorString()信息
0    确定
1    内存
2    网络
3    回放设备
99    其它
实例     这个处理程序用getError()去测定一个Shockwave Audio 演员 Norma Desmond Speaks 是否出现错误,如果是,用 getErrorString 获得错误信息并记入域演员:
on exitFrame
    if member("Norma Desmond Speaks").getError() <> 0 then
        member("Display Error Name").text = member("Norma Desmond \ Speaks").getErrorString()
    end if

end

参见    getError()
---------------

7.    getFlashProperty()    
语法:
    sprite(spriteNum).getFlashProperty("targetName", #property)

    描述:这个函数允许Lingo用函数getProperty()调用所给的Flash sprite的 Flash 行为脚本。这个Flash 行为脚本函数被用于获得影片片段的属性或Flash 影片的层级。 这于在Director 中测定sprite的属性是相似的。
那个targetName(目标名)是你想得到其属性的所给Flash sprite影片片段的名字或层级。
#property是想要得到的属性的名字。这些影片片段的属性是可得到的: #posX, #posY, #scaleX, #scaleY, #visible, #rotate , #alpha, #name, #width, #height, #target, #url, #dropTarget, #totalFrames, #currentFrame, and #lastframeLoaded。
为得到Flash sprite的全局属性,通过一个空的字符串作为targetName。可以得到Flash的这些全局属性:
#focusRect 和 #spriteSoundBufferTime。

看一下那个Flash文件对这些属性的描述。
这个声明获得值sprite 3 中Flash成员Star影片片段的#rotate属性。

sprite(3).setFlashProperty("Star", #rotate)

参见    setFlashProperty()
-----------------------

8.    GetFrameLabel
语法:    sprite(whichFlashSprite).getFrameLabel(whichFlashFra meNumber)

getFrameLabel(sprite whichFlashSprite, whichFlashFrameNumber)

描述     函数;与所需帧数相结合返回一个Flash影片的帧标签。如果此标签不存在, 或部分Flash 影片尚未读入,此函数返回一个空字符串。
    实例 下面的处理程序中,如果sprite 1正在播放的Flash 影片的第15帧标记为"Lions"就显示那一帧。Director 影片导航到"Lions"那帧。如果没有那个标记的话, Director 影片停在当前帧并且Flash 影片继续播放。

on exitFrame
    if sprite(1).getFrameLabel(15) = "Lions" then
        go "Lions"
    else
        go the frame
    end if

end
-----------------------

9.    getHotSpotRect()    
语法:    sprite(whichQTVRSprite).getHotSpotRect(hotSpotID)

getHotSpotRect(whichQTVRSprite, hotSpotID)

描述     QuickTime VR 函数; 返回一个被指定热区的近似的热区矩形范围。 如果热区不存在或在舞台上不可见,此函数返回rect(0, 0, 0, 0)。如果热区部分可见,这个函数返回可见部分的矩形范围。
------------------

10.    getLast()
语法:    list.getLast()

getLast(list)

描述 列表函数; 识别list指定的线性列表或属性列表的最后一个值。
    实例 此声明得到列表[10, 12, 15, 22]的最后一个项目,结果为22:

put Answers.getLast()

实例 此声明得到Bids属性列表[#Gee:750, #Kayne:600, #Ohashi:850]的最后一个项目,结果为850:

put Bids.getLast()
---------------------------------------------------------------

11.    getLatestNetID    
语法:    getLastestNetID

    描述:     
这个函数返回一个最近运行的网络操作标识符。
getLatestNetID返回的标识符可以被用做 netDone, netError, 和 netAbort 函数的参数以识别最近的网络操作。
注释:这个函数包括向后兼容性。推荐使用从网络lingo函数返回的网络ID,来代替getLatestNetID。可是,如果你要用getLatestNetID, 请在使用发布netLingo命令后立刻使用。

实例:    这个脚本将getNetText操作的网络ID分配给域演员,就会得到后面的结果。

on startOperation
    global gNetID
    getNetText("url")
    set gNetID = getLatestNetID()
end

on checkOperation
    global gNetID
    if netDone(gNetID) then
        put netTextResult into member "Result"
    end if
end

netAbort命令;netDone()和 netError()函数。
------------------------------------------------------------------------------

12.    getNetText()
语法:    getNetText(URL {, serverOSString} {, characterSet})

getNetText(URL, propertyList {, serverOSString} {, characterSet})

描述:     函数;从通常的HTTP、FTP服务器或允许进入的CGI查询文件中检索文本。

显示的第一个语法是开始检索文本。你可以提交HTTP CGI查询这种方式必须适当地在URL中加些代码。第二个语法中倘若URL带有正确编码时,包括一个属性列表并提交CGI查询。
用可选的参数属性列表(propertyList)得到CGI查询的属性列表。属性列表是加编码的URL并且URL的发送是(urlstring & "?" & encodedproplist)。
用可选参数serverOSString给任何属性列表中的返回字符加代码。默认值是UNIX但或许也可设置成Win或Mac并且将属性列表自变量中携带的返回值解释翻译给这些使用的服务器。对于大多数应用,不需要这个设置,因为在队列响应中不使用断路。
倘若Director运行在shift-JIS(日文)系统中,可应用此可选参数characterSet。 可能的字符集设置是JIS, EUC, ASCII, 和 AUTO。 Lingo从shift-JIS中转化被检索的数据到被命名的字符集。用AUTO设置,字符集试图测试被检索文本中是那种字符集并将其翻译成本地机使用的字符集。默认值是 ASCII字符集。

对于一个作为JAVA程序(applet)的播放影片, getNetText命令检索从包含applet的域中检索文本。这个行为与Shockwave不同并且并且必须在JAVE安全模式下运行。
用netDone 去找到GetNetText操作完成的时间,并用netError 找到此操作是否运行成功。用 netTextResult 返回以getNetText方式检索的文本。
此函数与相关的URL一起工作。

看一个用在已完成影片中getNetText()函数的例子, 参考Director应用文件夹中Learning\Lingo窗体和邮件影片(Forms and Post)实例。

实例:    当鼠标在域上点击抬起时,这个脚本从URL BigServer.com/sample.txt 检索文本并更新域演员:

property spriteNum
property theNetID
on mouseUp me
    theNetID = getNetText ("http://BigServer.com/sample.txt")
end
on exitFrame me
    if netDone(theNetID) then
        sprite(spriteNum).member.text = netTextResult(theNetID)
    end if

end

实例:这个例子检索CGI 查询结果。

getNetText("http://www.yourserver.com/cgi-bin/query.cgi?name=Bill")

实例:这个例子与前例相同,但它用一个属性列表去提交CGI查询,并为你做URL编译。

getNetText("http://www.yourserver.com/cgi-bin/query.cgi", [#name:"Bill"])

参见:netDone(),netError(),netTextResult()
---------------------------------------------------------------

13. getNthFileNameInFolder()    
语法:    getNthFileNameInFolder(folderPath, fileNumber)
    描述:     函数; 从指定路径的文件夹以及文件夹中的序号返回一个文件名。为了用getNthFileNameInFolder 函数实现此功能,在此文件夹结构中的Director 影片必须是可见的。(在Macintosh机器上,无论影片可见与否其它类型的文件均能找到。)如果此函数返回一个空字符串,你可能指定了一个大于文件夹中的文件数的数字。
此getNthFileNameInFolder 函数不能与URL一起工作。
指定其它文件夹名,要用@路径名操作符或影片正在运行的操作平台所指定格式的完整路径。例如:

在Windows中,用一个directory路径如: C:\Director\Movies。
    在Macintosh中,用一个路径名如:HardDisk:Director:Movies。要找到Macintosh桌面上的文件,用HardDisk:Desktop夹路径。
    这个函数Shockwave中是无效的。

实例:下面的处理程序返回一个当前路径下文件夹的文件名列表。用圆括号呼叫此函数, 并在currentFolder()插入当前的文件夹。

on currentFolder
    fileList = [ ]
    repeat with i = 1 to 100
        n = getNthFileNameInFolder(the moviePath, i)
        if n = EMPTY then exit repeat
        fileList.append(n)
    end repeat
    return fileList

end currentFolder

参见    @ (pathname)
---------------------------------------------------------------
14.    getOne()
语法:list.getOne(value)

getOne(list, value)


描述    
列表函数; 与特殊列表中指定的值结合鉴别线性列表的位置或属性列表中的值。
对于列表中包含多于一个此值时,只显示第一次出现的值。当列表中不包含此值时GetOne命令返回0。
当用在线性列表中,getOne命令的作用相当于getPos命令的作用。

实例    
这个声明鉴别Answers 线性列表[10, 12, 15, 22]中值为12的位置。

put Answers.getOne(12)

结果为2, 因为12在列表中排第二。

实例    
这个声明与值12相结合鉴别其在属性列表Answers[#a:10, #b:12, #c:15, #d:22]中的位置:
put Answers.getOne(12)

其结果是#b, 它与值12相对应。

参见    getPos()

--------------------------------------------------------------------------
15. getPixel()    
语法:    imageObject.getPixel(x, y {, #integer})

imageObject.getPixel(point(x, y) {, #integer})

描述:     这个函数返回所给图片对象中指定点像素的颜色值。这个值通常的是一个索引对象或RGB颜色对象,其取决于图象的位深。

如果你包括此可选参数值 #integer, 然而, 它没有作为一个原始数被返回。如果你正将一些像素设定给其它像素,它将更快地将自身设为原数。当图像为32位时,原整数值也是有用的因为它们包含alpha通道层信息以及颜色。此alpha通道信息可以通过除以整数2^8+8+8从原整数中析出。
如果所给像素超出指定图象对象时GetPixel()函数返回0。

实例:下列声明得到演员Happy中点(90,20)像素的颜色    并设定sprite 2为那种颜色。
myColor=member("Happy").image.getPixel(90, 20)

sprite(2).color=myColor

实例:    这个声明设变量alpha为32位图形对象myImage中点(25,33)的alpha通道值。

alpha = myImage.getPixel(25, 33, #integer) / power(2, 8+8+8)

参见:    depth, color(),setPixel(),power()
--------------------------------------------------------------------------------------------------------------------

16. getPlaylist()
语法:    sound(channelNum).getPlaylist()

getPlaylist(sound(channelNum))

描述:     这个函数返回正等待的soundObject 声音队列的一个拷贝。这个列表不包括当前正在播放的声音。
声音队列的列表或许不能被直接编辑。必须用setPlayList()函数。

此playlist是带有属性列表的线形列表。每一个属性列表对应等待队列中的一个声音演员。每一个等待的声音或许指定这些属性:
属性描述:
#member    要播放的声音演员。 这个属性一直存在;所有其它属性是可选的。
#startTime    声音中播放开始的时间,以毫秒计算。见startTime。
#endTime     声音中播放结束的时间,以毫秒计算。见endTime。
#loopCount    播放一段声音循环的次数。见loopCount。
#loopStartTime    声音中循环开始的时间,以毫秒计算。见loopStartTime。
#loopEndTime     声音中循环结束的时间,以毫秒计。见 loopEndTime。
#preloadTime    重放前预导入缓存的声音数,以毫秒计算。见preloadTime。
实例:    这个处理程序在声音通道2中有两个等待的声音,开始播放它们,然后显示在信息窗口显示playList列表。注意playlist只包括第2个等待的声音,因为第一个声音已经播放。
on playMusic
    sound(2).queue([#member:member("chimes")])
    sound(2).queue([#member:member("introMusic"), #startTime:3000,\
    #endTime:10000, #loopCount:5,#loopStartTime:8000, #loopEndTime:8900])
    sound(2).play()
    put sound(2).getPlaylist()

end
-- [[#member: (member 12 of castLib 2), #startTime: 3000, #endTime: 10000, #loopCount: 5, #loopStartTime: 8000, #loopEndTime: 8900]]

参见:    endTime, loopCount, loopEndTime, loopStartTime, preLoadTime, queue(),setPlaylist(),startTime
------------------------------------------------------------------------

17.    getPos()    
语法:list.getPos(value)

getPos(list, value)

描述    
列表函数; 用值来鉴别其在指定列表中的位置。当此值不在列表中时getPos命令返回0。

当列表中含有两个以上的此值时,显示第一次出现的情况。这个命令应用在线性列表中时与getOne命令作用相同。

实例
    这个声明鉴别值12在列表 Answers[#a:10, #b:12, #c:15, #d:22]中的位置:

put Answers.getPos(12)

结果为2, 因为12 在列表中排第二。

参见     getOne()
----------------------------------------------------------------------------------------------

18.    getPref()
语法:    getPref(prefFileName)

    描述    
函数; 重新找回指定文件中的内容。

当你用这个函数时, 用由setPref 函数创建的文件名来代替prefFileName。如果无此文件存在getPref 返回 空(VOID)。
所用的文件名prefFileName 只需是一个有效的文件名,而不需完整路径;Director会补全路径。文件路径为 Director处理程序路径。此唯一有效的文件prefFileName是 .txt 和 .htm文件;任何其它存在的文件被拒绝。
不要用此命令访问只读文件或被锁定的媒体。
注释:在浏览器中,用setPref 写的数据不是保密的。任何Shockwave 影片可以读取这个信息并可将其上载到一个服务器上。不应用setPref.存储秘密信息。

看看一个完整影片中使用getPref的例子,浏览Director应用文件夹中Examples文件夹中 Learning\Lingo读写文本影片的例子。

实例
    这个处理程序重新找到测试文件的内容并将其分配给Total Score域:

on mouseUp
    theText = getPref("Test")
    member("Total Score").text = theText

end

参见    setPref
----------------------------------------------------------------



编辑历史:[这消息被freda编辑过(编辑时间2000-12-26 23:52:34)]
[这消息被freda编辑过(编辑时间2001-01-05 10:03:06)]
[这消息被freda编辑过(编辑时间2001-01-08 10:37:26)]
[这消息被freda编辑过(编辑时间2001-01-08 22:29:11)]


xaero

职务:普通成员
等级:1
金币:0.0
发贴:22
注册:2000/9/23 19:31:36
#62000/12/22 16:41:04
getProp()
语法: getProp(list,property)
list.property
描述:
属性列表函数;getProp()命令需要两个参数:属性列表名称和属性名,在该属性列表中指定与
属性名称相对应的值。
与getprop命令相似,如果属性列表内部不存在该属性或该列表为线性列表,该命令将返回错误
消息。

实例:属性列表Answers的组成为[#a:10,#b:12,#c:15,#d:22],下面的表达式将返回属性#c所关联的值:
getProp(Answers,#c)
因为#c所关联的值是15,所以该表达式返回的结果为15。

参见:getOne()
----------------------------------------------------------------------------------------------

getPropAt()
语法:list.getPropAt(index)
getPropAt(list,index)
描述:
属性列表函数;只应用于属性列表,该命令需要两个参数:属性列表名称和列表中的位置,该命
令返回存放在属性列表上指定位置的属性名称,如果该位置在属性列表中不存在或命令应用于线性列表,
将会出现脚本错误。

实例:下面的表达式返回指定属性列表中的第二个属性名称
put Answers.getPropAt(2)
--#b
结果为#b所关联的值20(搞不懂他在说什么,可能是MM的人笔误吧)

(getAt命令可返回指定位置的数据,但从属性引用数据的话要比从位置引用数据快,因为如果通过指定
位置来引用的话,Lingo会先查找该位置所对应的属性,然后再从该属性来引用数据,以上属个人意见,
仅供参考)
-----------------------------------------------------------------------------------------------

on getPropertyDescriptionList
语法:on getPropertyDescriptionList
statement(s)
end

描述:
系统信息、事件处理程序;该命令返回的列表用于生成行为参数对话框,在该对话框中可定义行为
中的参数。
该处理程序应被放置于行为脚本当中,如果行为脚本中不包括该处理程序,该行为被放置或添加到
某角色时将不会在director界面出现参数对话框,也就无法在界面中进行编辑。
不论用户拖动behavior到score或在behavior inspector中双击behavior,任何使behavior inspector
被激活的动作都会使on getPropertyDescriptionList消息发送。
#default、#format和#comment对于每个参数都是必须设置的,以下则是对于上述设置可能需要的值:
#default: 参数的初始化设置
#format: #integer #float #string #symbol #member #bitmap #filmloop #field #palette #picture
#sound #button #shape #movie #digitalvideo #script #richtext #ole #transition #xtra
#frame #marker #ink #boolean
#comment: 在参数对话框中参数编辑区域左面所出现的描述性文字
#range: 赋予变量可能的范围值
该范围值可以定义为一个线性列表中的几个值或在属性列表中从一个最小值到一个最大值:
[#min:minvalue,#max:maxvalue]

实例:这个程序定义一个显示在参数对话框中的行为参数。每个声明都由向一个命名为description的属性
列表中用addProp命令添加一个参数开始。每个添加到列表中的元素都定义了一个变量和该变量的#default、
#format和#comment的值。
on getPropertyDescriptionList
    description = [:]
    addProp description,#dynamic, [#default:1, #format:#boolean, #comment:"Dynamic"]
    addProp description,#fieldNum, [#default:1, #format:#integer, \ #comment:"Scroll which sprite:"]
    addProp description, #extentSprite,[#default:1,#format:#integer, \ #comment: "Extend Sprite:"]
    addProp description,#proportional,[#default:1,#format:#boole an, \ #comment: "Proportional:"]
    return description
end

参见:addProp, on getBehaviorDescription, on runPropertyDialog
---------------------------------------------------------------------------------------------------------

getStreamStatus()


语法:getStreamStatus(netID)

getStreamStatus(URLString)

描述:函数;该函数返回一个关于流式传输信息的属性列表,该列表包括下列句柄:
#URL: 包含用来开始网络操作的URL句柄
#state:由Connecting, Started, InProgress, Complete, "Error" 或"noInformation"组成
(发生最后一句的条件是当指定的网络ID不可用或在URL句柄中所指定的URL没有在缓存中发现)
#bytesSoFar:当前为止从网络上所接收的字节数
#bytesTotal:流式传输中所通过的所有字节数,如果HTTP服务器中的MIME不包括目录长度的话,该值可能为0
#error:如果下载没有完成的话句柄将包含一个(EMPTY),下载成功的话当然OK,如果下载在带有错误的情况下
结束,将会产生一个错误编码。
描述:举例来说,你可以由getNetText()开始网络操作,并使用getStreamStatus()来跟踪进程。

实例:该表达式由getNetText()和置于netID变量中的netID来开始下载,并在message window中显示当前的下载进程:
put getStreamStatus(netID)

-- [#URL: "www.macromedia.com", #state: "InProgress", #bytesSoFar: 250, \ #bytesTotal: 50000, #error:
EMPTY]

参见:on streamStatus, tellStreamStatus()
----------------------------------------------------------------------------------------------------------

编辑历史:[这消息被xaero编辑过(编辑时间2000-12-22 16:43:07)]


freda

职务:普通成员
等级:1
金币:0.0
发贴:45
注册:2000/9/27 10:04:07
#72000/12/22 17:43:10
感谢xaero的加盟!

声明:
现在由我和xaero一起翻译第7组!

不好意思,最近实在太忙,自己的翻译工作没有进展!



xaero

职务:普通成员
等级:1
金币:0.0
发贴:22
注册:2000/9/23 19:31:36
#82001/1/2 18:37:25
#¥·¥·刚才贴错了

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



freda

职务:普通成员
等级:1
金币:0.0
发贴:45
注册:2000/9/27 10:04:07
#92001/1/3 11:38:35
真高兴看到,xaero的可喜成绩!真是硕果累累呀!

这两天,也翻了几个,但有些匆忙,还需改动,暂不贴上!



freda

职务:普通成员
等级:1
金币:0.0
发贴:45
注册:2000/9/27 10:04:07
#102001/1/8 22:45:14
在xaero的大力帮助下,完成了第7组的翻译任务,真心感谢xaero!
深深体会到通力合作的优势,相互鼓励、相互激励自在不言中。

由于时间匆忙,翻译中的漏洞、不妥,请各位指教!
再次感谢xaero,感谢5dmedia给大家这次合作的机会,交流合作,共同探索!




xaero

职务:普通成员
等级:1
金币:0.0
发贴:22
注册:2000/9/23 19:31:36
#112001/1/9 20:29:17
呵呵,这几天比较忙,放上来以后就几乎没来过,
合作愉快,freda有空到上海来玩,请我客哦:)



freda

职务:普通成员
等级:1
金币:0.0
发贴:45
注册:2000/9/27 10:04:07
#122001/1/10 10:11:01
当然,当然!会有机会的!
xaero,不过别忘了,你是地主呀!给大家多介绍上海呀!