要命的问题...原来是不同版本发布的swf,版本不兼容

AS3中如何获取外部加载SWF的帧数

我想在A.swf中加载影片B.swf 并获取到B.swf的当前帧和总帧数,并通过进度条显示B.swf的播放过程

但现象无法获取到B.swf的帧数

我的代码如下:

import flash.display.*;
import flash.events.*;
import flash.net.URLRequest;

//变量声明
var contentSwf:MovieClip;
var url:String = "gk01.swf";
var loader:Loader = new Loader();
//loader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS,mcLoading);
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, loadedHandler);
var request:URLRequest = new URLRequest(url);
loader.load(request);
addChild(loader);

function loadedHandler(event:Event):void {
trace(event.target.content);
trace(event.target.loader.content);
contentSwf = MovieClip(event.target.loader.content);
trace(contentSwf.totalFrames);
}

编译报错:


[object AVM1Movie]
[object AVM1Movie]
TypeError: Error #1034: 强制转换类型失败:无法将 flash.display::AVM1Movie@1118bcc1 转换为 flash.display.MovieClip。
at class_as3_fla::MainTimeline/loadedHandler()

flash player 中的 AVM1 和 AVM2 之间是不能相互通讯的,我的程序没有问题,而是我加载的外部SWF文件是flash 8编译的,在CS3中无法访问它的属性,将外部加载的SWF文件修改属性,重新用CS3发布一下就可以了。

崩溃死了,调了1个多小时~~~

转载于:https://www.cnblogs.com/xxcainiao/archive/2009/05/15/1457668.html

要命的问题...原来是不同版本发布的swf,版本不兼容AS3中如何获取外部加载SWF的帧数 我想在A.swf中加载影片B.swf 并获取到B.swf的当前帧和总帧数,并通过进度条显示B.swf的播放过程但现象无法获取到B.swf的帧数我的代码如下:import flash.display.*;import flash.events.*;import ... 该模块是面向未来的,并使用异步/等待承诺。 这意味着您需要运行7.6.0或更高版本的7.6.0 。 如果您的7.5.0版本在7.0.0和7.5.0之间, 7.5.0可以使用和声标志--harmony-async-await来使用async / await承诺。 这个包是在弗里茨!盒7390和7490测试,固件版本6.53 , 6.51和6.83 。 npm install fritzbox.js 下面是一个简单的示例,显示了如何获取使用进行的通话记录。 const fr
TypeError : Error # 1034 : 强制转换 类型 失败 : 无法 flash . display ::BitmapData@79aea11 转换 flash . display .Bitmap。 private var bitMap:Bitmap; bitMap = Bitmap(Bitmap(mapArray[index]).bitmapData); 正确的是: private va...
AS3历经若干年的成长,已经完全进化为一门面向对象的(动态)语言,但很多介绍AS3的书籍上往往只注意了AS3语言本身,而淡化了如何跟 Flash IDE协同开发。 1.如何在 Flash 时间轴代码上创建一个外部as文件中定义的 Movi eClip 实例? 假设外部有一个MyClip.as文件,内容如下: package { import flash . display . Movi eClip ; Flex Application里的addChild() February 15th, 2008 在Flex Application里,是不能直接用addChild添加Sprite, Movi eClip 等来自 flash . display 包里的类的。譬如以下代码就会报错: private function init():void {    var sp:Sprite = new Sprit...
import flash . display . Movi eClip ; import flash .events.Event; import flash . display .Stage; import away3d.primitives.WireframeSphere; import away3d.conta * Licensed under the MIT License * ... 调试了好几天,,可能是菜鸟吧,看了下面代段代码后终于解决了, =========================================================================================== as3里是不支持实例名滴! 所以捏,你需要把这个元件修改一下。
VM22 WAService.js:1 TypeError : Cannot read property 'forceUpdate' of undefined at VM22 WAService.js:1 at VM22 WAService.js:1 at o.emit (VM22 WAService.js:1) at c (VM9 asdebug.js:1) at l (VM9 asdebug.js:1) at VM9 asdebug.js:1 at Set.forEach (<anonymous>) at f (VM9 asdebug.js:1) at e.exports.g (VM9 asdebug.js:1) at VM9 asdebug.js:1这是什么 错误
mybatis foreach报错It was either not specified and/or could not be found for the javaType Type handler...