加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Flex程序 帧 帧率

发布时间:2020-12-15 03:51:21 所属栏目:百科 来源:网络整理
导读:Flex程序是由两帧构成,第一帧用于加载程序和相关RSL等,第二帧才会执行swf。 进入第二帧后,FlashPlayer仍然按照指定的“帧频(时间间隔)”不断重新播放第二

Flex程序是由两帧构成,第一帧用于加载程序和相关RSL等,第二帧才会执行swf。

进入第二帧后,FlashPlayer仍然按照指定的“帧频(时间间隔)”不断重新播放第二帧。这是FlashPlayer运行特点。

Flex组件框架也是借由这个运行特点(机制)监听“进入帧(ENTER_FRAME)”事件,然后更新各种属性、尺寸、重新绘制外观的。

(Flex程序本质上和Flash程序一样,也是影片剪辑。也会被FlashPlayer循环播放)

?

下面的例子可以测试帧频,同时也可以证明:

1. Flex程序在指定的“帧频”下,不断被重新播放。

2. 这个时间间隔不是绝对的相等,而是“差不多”的“等间隔”。

关键词:

frameRate:帧频。下例中的帧频被指定为1,也就是每隔1秒钟中重放第二帧

ENTER_FRAME:进入帧后,由FlashPlaer发出的帧事件

?

<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"?
????? xmlns:s="library://ns.adobe.com/flex/spark"?
????? xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600"?
??????frameRate="1"
????? creationComplete="init()"
????? >
?<fx:Script>
??<![CDATA[
???var temp:int = 0;
???
???public function init():void{
????//对帧重放进行监听
????this.addEventListener(Event.ENTER_FRAME,enterFrame);
????//txt.text = this.stage.frameRate+"rn";
???}
???
???public function enterFrame(e:Event):void{
????//在画面上记录进入帧的时间
????txt.text += (flash.utils.getTimer()-temp) + "rn";
????temp=flash.utils.getTimer();
????
????//为防止记录的内容过多,在记录部分时间后去掉监听
????if (txt.text.length >100)
????{
?????this.removeEventListener(Event.ENTER_FRAME,enterFrame);
????}
???}
??]]>
?</fx:Script>
?<s:TextArea id="txt" x="29" y="35" width="497" height="331"/>
</s:Application>

>>执行效果

从第二个数据开始,输出的时间间隔(时间差)基本相同

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读