如何在 actionscript 3.0 中通过 URL 加载图像
How To Load Image Though URL in action script 3.0
我测试了action script 2.0 中的代码。它工作得很好,但它不支持 GIF,所以我希望它在动作脚本 3.0 中编写。
但我对此一无所知。
var current_loader: Number = 1;
import flash.geom.*;
var current_img: Number = 0;
this.createEmptyMovieClip('img_01', 999);
this.createEmptyMovieClip('img_02', 998);
var loader: MovieClipLoader = new MovieClipLoader();
var listener: Object = new Object();
listener.onLoadComplete = function (target_mc: MovieClip) {
if (target_mc._name == 'img_01') {
img_02._visible = false;
} else {
img_01._visible = false;
}
progress_bar.visible = true;
current_loader.opaqueBackground = 0xFF0000;
};
var interval: Number = setInterval(load_image, 1000);
function load_image() {
loader.addListener(listener);
}
loader.loadClip("http://google/Example3", current_loader);
current_loader = current_loader == 1 ? 2 : 1;
current_img = current_img == images.length - 1 ? 0 : current_img + 1;
}
直接使用 as3 有更简单的方法,但这是一种稳健的加载方式,可以加载包含大量优秀文档的文件类型。 https://greensock.com/LoaderMax-AS3
在 as3 中非常简单:
打开 Flash IDE,创建新的 .fla 文件,select 第一帧,打开 'actions (f9)' 复制代码。
当然在 AS3 中最好使用 类 来放入您的代码。
import flash.display.Loader;
import flash.display.Sprite;
import flash.events.Event;
import flash.events.HTTPStatusEvent;
import flash.events.IOErrorEvent;
import flash.net.URLRequest;
var imageLoader:Loader = new Loader();
var request:URLRequest = new URLRequest("http://dummyimage.com/600x400/e000e0/fff.gif");
imageLoader.load(request);
addChild (imageLoader);
// and all possible listeners
imageLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, completeHandler);
imageLoader.contentLoaderInfo.addEventListener(HTTPStatusEvent.HTTP_STATUS, httpStatusHandler);
imageLoader.contentLoaderInfo.addEventListener(Event.INIT, initHandler);
imageLoader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
imageLoader.contentLoaderInfo.addEventListener(Event.OPEN, openHandler);
imageLoader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, progressHandler);
function completeHandler(event:Event):void {
trace("completeHandler: " + event);
}
function httpStatusHandler(event:HTTPStatusEvent):void {
trace("httpStatusHandler: " + event);
}
function initHandler(event:Event):void {
trace("initHandler: " + event);
}
function ioErrorHandler(event:IOErrorEvent):void {
trace("ioErrorHandler: " + event);
}
function openHandler(event:Event):void {
trace("openHandler: " + event);
}
function progressHandler(event:ProgressEvent):void {
trace("progressHandler: bytesLoaded=" + event.bytesLoaded + " bytesTotal=" + event.bytesTotal);
}
我喜欢这个。它的工作方式Perfectly.i认为它是最简单的。
package
{
import flash.display.Loader;
import flash.display.Sprite;
import flash.net.URLRequest;
import flash.utils.Timer;
import flash.events.TimerEvent;
import flash.events.Event;
public class Example extends Sprite {
public function Example() {
var myTimer:Timer = new Timer(1000);// 1 second
myTimer.addEventListener(TimerEvent.TIMER,runMany);
myTimer.start();
function runMany(e:TimerEvent):void {
var loader:Loader=new Loader();
var url:String= "http://Google.Example3.com/latimage.php";
loader.load(new URLRequest(url));
addChild(loader);
}
}
}
}
我测试了action script 2.0 中的代码。它工作得很好,但它不支持 GIF,所以我希望它在动作脚本 3.0 中编写。 但我对此一无所知。
var current_loader: Number = 1;
import flash.geom.*;
var current_img: Number = 0;
this.createEmptyMovieClip('img_01', 999);
this.createEmptyMovieClip('img_02', 998);
var loader: MovieClipLoader = new MovieClipLoader();
var listener: Object = new Object();
listener.onLoadComplete = function (target_mc: MovieClip) {
if (target_mc._name == 'img_01') {
img_02._visible = false;
} else {
img_01._visible = false;
}
progress_bar.visible = true;
current_loader.opaqueBackground = 0xFF0000;
};
var interval: Number = setInterval(load_image, 1000);
function load_image() {
loader.addListener(listener);
}
loader.loadClip("http://google/Example3", current_loader);
current_loader = current_loader == 1 ? 2 : 1;
current_img = current_img == images.length - 1 ? 0 : current_img + 1;
}
直接使用 as3 有更简单的方法,但这是一种稳健的加载方式,可以加载包含大量优秀文档的文件类型。 https://greensock.com/LoaderMax-AS3
在 as3 中非常简单: 打开 Flash IDE,创建新的 .fla 文件,select 第一帧,打开 'actions (f9)' 复制代码。
当然在 AS3 中最好使用 类 来放入您的代码。
import flash.display.Loader;
import flash.display.Sprite;
import flash.events.Event;
import flash.events.HTTPStatusEvent;
import flash.events.IOErrorEvent;
import flash.net.URLRequest;
var imageLoader:Loader = new Loader();
var request:URLRequest = new URLRequest("http://dummyimage.com/600x400/e000e0/fff.gif");
imageLoader.load(request);
addChild (imageLoader);
// and all possible listeners
imageLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, completeHandler);
imageLoader.contentLoaderInfo.addEventListener(HTTPStatusEvent.HTTP_STATUS, httpStatusHandler);
imageLoader.contentLoaderInfo.addEventListener(Event.INIT, initHandler);
imageLoader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
imageLoader.contentLoaderInfo.addEventListener(Event.OPEN, openHandler);
imageLoader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, progressHandler);
function completeHandler(event:Event):void {
trace("completeHandler: " + event);
}
function httpStatusHandler(event:HTTPStatusEvent):void {
trace("httpStatusHandler: " + event);
}
function initHandler(event:Event):void {
trace("initHandler: " + event);
}
function ioErrorHandler(event:IOErrorEvent):void {
trace("ioErrorHandler: " + event);
}
function openHandler(event:Event):void {
trace("openHandler: " + event);
}
function progressHandler(event:ProgressEvent):void {
trace("progressHandler: bytesLoaded=" + event.bytesLoaded + " bytesTotal=" + event.bytesTotal);
}
我喜欢这个。它的工作方式Perfectly.i认为它是最简单的。
package
{
import flash.display.Loader;
import flash.display.Sprite;
import flash.net.URLRequest;
import flash.utils.Timer;
import flash.events.TimerEvent;
import flash.events.Event;
public class Example extends Sprite {
public function Example() {
var myTimer:Timer = new Timer(1000);// 1 second
myTimer.addEventListener(TimerEvent.TIMER,runMany);
myTimer.start();
function runMany(e:TimerEvent):void {
var loader:Loader=new Loader();
var url:String= "http://Google.Example3.com/latimage.php";
loader.load(new URLRequest(url));
addChild(loader);
}
}
}
}