教程学院
图像设计 多媒体类 机械制图 办公软件 操作系统 系统编程 网站编程 网页制作 数据库类 网络路由 网络工程 网络安全 考试认证
firefox火狐浏览器下载
酷网学院
CAD
AutoCad Cam350 ProEngineer GCcam MATLAB Unigraphics SolidWorks CAXA Solid3000 Cimatron EdgeCAM
系统
安全 防火墙 病毒 WinXP Win2003 Vista
数据库
编程
网络
精彩图库
  当前位置: 库库中文网 · 多媒体类教程 · Director教程 · Director综合技巧

Director 怎么样检查测试演员地载入进度

学院最新推荐文章
教程推荐
『Director 怎么样检查测试演员地载入进度』如果文章有大量图片,显示会较慢,请等待图片下载完成
 
点击数: 更新时间:2005-8-29 
Director 如何检测演员的载入进度
   原著:lingoworkshop
   翻译:alphachi

   为了优化影片,我们经常需要预载演员。虽然通过使用相关的预载命令或设置演员本身的预载模式就能够达到这一目的,但不要忘记在进行预载时反馈一些相应的动态信息,以保持与用户之间的交互,也就是说,需要检测并显示演员的载入进度。

   通过使用idleLoadtag命令,便可以轻松做到这一点。这个命令允许通过使用一个列表来监测整个载入过程,因此我们可以在发出一个演员预载的命令之前用其来跟踪每个演员。由于只是测算列表项目的载入进度而不是测算演员本身的载入进度,所以无论对于几个小型演员的载入还是许多大型演员的载入,这个方法都非常有效。

   首先让我们来认识一下IdleLoadTag命令:

   语法:
   the idleLoadTag

   描述:
   系统属性,用于在系统等待时标记或识别加载队列的成员数量。这个属性为识别预加载一组成员提供了方便。此属性可以测试和设置。

   例如:
   这条语句将等待加载的成员数量设置为10。
   the idleLoadTag = 10

   下面就是一个控制载入演员列表的父代剧本实例,通过它能够获得演员载入的百分比。

property myDefaultIdleMode
property myLoadtag
property myIndexMax
property myIndex
property myMemberList
property myTimeout

on new ( me , aListofMembers)
me .mInitClass()
me .mInitInstance()
if aListofMembers. ilk = #list then me .mLoadMembers(aListofMembers)
return me
end

on mDestroy ( me )
if myTimeout. ilk = #timeout then myTimeout. forget ()
   myIndex = myIndexMax
cancelIdleLoad (myLoadtag)
the idleLoadMode = myDefaultIdleMode
end

on mLoadMembers ( me , aListofMembers)
   myMemberList = aListofMembers. duplicate ()
   myIndexMax = myMemberList. count
   myIndex = 0
   myTimeout = timeout ( me . string ). new ( 0 , #nothing , me )
the idleLoadMode = 3
end

on mGetPercentageDone ( me )
if myIndexMax > 0 then
return ( float (myIndex)/(myIndexMax))* 100
else
return 100
end if
end

on exitframe ( me )
if idleLoadDone (myLoadtag) then
if me .mLoadNextMember() = 0 then
       myTimeout. target = VOID
       myTimeout. forget ()
the idleLoadMode = myDefaultIdleMode
end if
end if
end

on mLoadNextMember ( me )
if myIndex < myIndexMax then
     myIndex = myIndex + 1
     thisMember = myMemberList[myIndex]
if thisMember. ilk = #member then preLoadMember thisMember
return myIndex
else
return 0
end if
end

on mInitClass ( me )
   myDefaultIdleMode = the idleLoadMode
end

on mInitInstance ( me )
   uniqueName = string ( me ). word [ 4 ]
delete the last char of uniqueName
   myLoadTag = symbol (uniqueName)- 0
   myTimeout = VOID
end


   将下面的Behavior赋予一个进度条,即可显示载入的百分比:

property myLoader

on beginSprite ( me )
   myMembers = [ member ( "blah1" , member ( "blah1" ), member ( "blah3" ))
   myLoader = script ( "MemberLoadMgr_class" ). new (myMembers)
end

on exitframe ( me )
if myLoader. ilk = # instance then
     amntLoaded = myLoader.mGetPercentageDone()
put "loading " & integer (amntLoaded) & "%"
if amntLoaded = 100 then
       myLoader.mdestroy()
       myLoader = VOID
end if
end if
end

】【关闭窗口
·上页:
·下页:
相关文章
     多媒体类教程 - Director综合技巧
普通教程在Director中应用ActiveX技术
普通教程DIRECTOR应用RAV Ware MUI Make
推荐教程DIRECTOR的Library行为库的使用
推荐教程在DIRECTOR中把Photoshop的laye
推荐教程把Director 8.5 与PowerPoint结
普通教程在DIRECTOR播放mpg的插件
普通教程Director软件应用中出现的问题解
普通教程在Director中出现的常见问题解答
普通教程Director的编程环境以及常用属性
普通教程试用Director 8.5 Shockwave St
普通教程Director 8.5 Shockwave Studio
普通教程Excel2000和Director8.5亲密接触
精彩图片汇集
advertisement
关于站点 - 广告服务 - 联系我们 - 版权隐私 - 免责声明 - 合作伙伴 - 程序支持 - 网站地图 - 返回顶部
网站文本地图
版权所有:库库中文 2005-2007 欢迎各种媒体转载我们的原创作品[转载请注明出处]
copyright © 2005-2008 www.QQGB.com online services. all rights reserved. 蜀ICP备05015578
Template designed by Virus. Optimized for 1024x768 to Firefox,Opera and MS-IE6. Site powered by EQL.
红盾
热爱电脑,热爱生活
拥有电脑,拥有生命
让我们享受拥有电脑的时光