У меня была такая же проблема, обновляя код AS2 до AS3.Но я использовал массив для вызова целого списка SWF-файлов для автоматической загрузки одного за другим без кнопки.
Я принял ваше решение этой проблемы и сформировал, чтобы соответствовать моим потребностям, и это сработало!Для тех, кто хочет мой код, вот он:
Контейнер (родительский) SWF, который вызывает загрузчик для загрузки массива SWF (на 1-м кадре временной шкалы):
import flash.net.URLRequest;
stop();
// Module Name and pages //
var mcArray:Array = new Array("swf/1-Intro.swf",
"swf/2-DOTdefinition.swf",
"swf/3-HazardousTable.swf",
"swf/4-BillsofLading.swf",
"swf/5-PaperBillsofLading.swf",
"swf/6-ReturnsManifest_v2.swf",
"swf/7-BillsOfLading.swf",
"swf/8-HazardClasses.swf",
"swf/9-HazardClasses2.swf",
"swf/11-ORMD.swf",
"swf/12-ID_Number.swf",
"swf/13-PackingGroup.swf",
"swf/14-ThinkAboutIt.swf",
"swf/15-EmergencyResponseBook.swf",
"swf/16-Labels.swf",
"swf/17-WhyKeepRecords_P1.swf",
"swf/17-WhyKeepRecords_P2.swf",
"swf/18-EmergencyResponseProcedures.swf",
"swf/19-SpillManagement.swf",
"swf/20-PreventativeMeasures.swf",
"swf/21-Security_v3.swf",
"swf/22-Certification.swf");
// Movie Clip Loader
var myMCL:Loader = new Loader();
var curFrameNum:Number = 0;
myMCL.addEventListener(Event.COMPLETE, loadNext);
function loadNext() { //this should be a global variable
var url:String = mcArray[curFrameNum];
var urlRequest:URLRequest = new URLRequest(url);
myMCL.load(urlRequest);
addChild(myMCL);
curFrameNum++;
}
loadNext();
Вызов родительского метода помещается в последний кадр каждого SWF-фильма (дочерний):
stop();
parent.parent.loadNext();