【www.gdgbn.com--php应用】

今天我们来看看如何用 as加载外部图像,下面我们来看看教程吧.

其中所作出的改善AS3是你如何载入外部内容到您的应用程序。一些新的变化让您更容易开展和措施的进度下载-东西总是有点挑战A S2的世界。

在本文中,我将描述如何载入外部形象到影片剪辑中的应用Flash发行说明。以下是一个例子,你将创造接近尾声时这个教程:

[图片取自市以前被称为kirupaVille ! ]

在上面的例子中,当您运行,图像存储在同一文件夹中的SWF加载并显示。我知道这是很难看到的,但不要担心,因为你将能够显示这个非常迅速地在您自己的电脑非常快。

让我们开始吧
下面的步骤将帮助您创建一个小型应用程序载入一个图像文件从外部位置:

首先,创建一个新的Flash发行说明申请,并保存此申请loadimage 。

对于本文的大小舞台,背景颜色,等等并不重要,以便随时离开一切都在默认设置,如果你想要的。
让我们添加一个影片剪辑,将您的主机装的形象。转到插入

一旦一切都设置,按确定关闭此对话框,并创建新的ImageClip影片剪辑的象征。

现在,您将编辑认为您的新创建的ImageClip 。我们真的不希望做任何事情来此剪辑,因此退出了ImageClip并返回到场景1 ,点击第一场中的链接导航栏

你应该回到你的主要场景1次浏览。现在,我们创造了新的ImageClip的象征,但我们并没有真正加入到我们的现场。从图书馆,拖放您ImageClip影片剪辑到您的场景:

一旦你插入ImageClip到您的现场,你不应该看到的东西外面的小圆圈代表你的空影片剪辑:

[一个空的影片剪辑是由空心圆圈]

请务必空心圆圈代表ImageClip被选中,并从属性面板,让您的选择ImageClip例如名称imageArea

在过去的网页中,您说一个空的影片剪辑的实例名称是imageArea到您的现场。该影片剪辑将负责展示您的形象负荷。在谈到图片...

找到一个图像
一定要保存的图像到相同的位置您的SWF发布位置-默认情况下,同一文件夹中您的F LA。如果你不能找到一个形象迅速,请随时保存以下图片,我用我的例子kirupaVille :

在过去的网页中,您说一个空的影片剪辑的实例名称是imageArea到您的现场。该影片剪辑将负责展示您的形象负荷。在谈到图片...

找到一个图像
回去的教程,我救了形象pixelHouses.jpg ,你可以找到它的权利旁边我loadimage FLA文件:

你会看到我为什么强调节约的形象在同一地点作为您的FLA和输出当我告诉你的代码。

新增码
下一步是添加一些代码。您的时间应该只有一个层称为第1层和第1层将有一个关键帧。右击关键帧,并从出现的菜单中,选择动作:



[右击您的关键帧,并选择行动]

操作窗口就会出现。在这个窗口中,复制并粘贴以下代码:
var imageLoader:Loader;   function loadImage(url:String):void {
// Set properties on my Loader object imageLoader = new Loader(); imageLoader.load(new URLRequest(url)); imageLoader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, imageLoading); imageLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, imageLoaded);
} loadImage("pixelHouses.jpg");   function imageLoaded(e:Event):void {
// Load Image imageArea.addChild(imageLoader);
}   function imageLoading(e:ProgressEvent):void {
// Use it to get current download progress // Hint: You could tie the values to a preloader :)
}

我在上面的代码,请注意,我走过的名字图像文件,我想负荷:

var imageLoader:Loader;   function loadImage(url:String):void {
// Set properties on my Loader object imageLoader = new Loader(); imageLoader.load(new URLRequest(url)); imageLoader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, imageLoading); imageLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, imageLoaded);
} loadImage("pixelHouses.jpg");   function imageLoaded(e:Event):void {
// Load Image imageArea.addChild(imageLoader);
}   function imageLoading(e:ProgressEvent):void {
// Use it to get current download progress // Hint: You could tie the values to a preloader :)
}

一定要更改名称的图像文件,一个要载入。一旦你这样做,然后按Ctrl + Enter键(控制

var imageLoader:Loader;

在这一行,我宣布一个新的对象,其所谓的imageLoader型装载机。一流的装载机可以让你载入图片为基础的内容,如图片,巴布亚新几内亚,和GIF ,并提供了很多方便的方法,使您可以轻松地做到这一点。你会看到一些人在我们的代码很快。

// Set properties on my Loader object
imageLoader = new Loader();
imageLoader.load(new URLRequest(url));
imageLoader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, imageLoading);
imageLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, imageLoaded);
}

在下一行,我开始我们的loadImage方法。这种方法需要一个网址的价值编码为一个字符串,它的返回类型是无效的。换句话说,它不会返回一个值。

function loadImage(url:String):void {
// Set properties on my Loader object
imageLoader = new Loader();
imageLoader.load(new URLRequest(url));
imageLoader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, imageLoading);
imageLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, imageLoaded);
}

下两行很有意思!我创建了两个活动的听众,要求适当的事件处理程序时,发射。这两个事件是ProgressEvent.PROGRESS和Event.COMPLETE 。

由于您的图片被下载,您的进展事件每次您更多的图片下载。这可以让你有一个准确的快照多少您的数据已被下载以及如何更是左边。一旦您的所有数据已被下载,那么您的完整的事件,让您知道这一点。

当一个事件是发射,一个事件处理程序是得到通知。一个事件处理程序是一个幻想的名称的方法。该事件处理程序的要求得到我们的进步是imageLoading事件,以及事件处理程序的要求得到完整的事件是imageLoaded 。该捆绑的活动与事件处理程序是照顾的addEventListener 。

最后需要注意的一点是,我没有要求addEventListener的方法登记之间的关系您的活动和事件处理程序,在您的imageLoader对象本身。相反,我加入到一个名为contentLoaderInfo财产。原因是, contentLoaderInfo返回LoaderInfo对象,为您提供一切您需要注册事件。这是您的默认装载机对象, imageLoader ,不这样做。

这样,我们都是与我们的loadImage方法,我们可以着手可能是最重要的代码行内这一应用-一个实际得到的一切开始。


-------------------------------------------------- ------------------------------

loadImage ( “ pixelHouses.jpg ” ) ;
在这条线我称之为loadImage方法并通过它看起来像什么的文件我们的形象。由于该图像是在同一目录作为我的FLA和的SWF文件,我只是引用文件,但它实际上是相对路径的形象。如果您的图片储存在一个图片文件夹中,您的论点loadImage将是:

loadImage ( “图像/ pixelHouses.jpg ” ) ;
细节之外,这是这一呼吁,规定在议案一切需要加载您的形象。这要求loadImage建立您的装载机对象和听众两个事件处理的进展和完成的事件。


-------------------------------------------------- ------------------------------

功能imageLoaded (英文:事件) :无效(
/ /加载图像
imageArea.addChild ( imageLoader ) ;

这种方法是我们的事件处理的完整的事件您曾。请注意,它的论点的对象类型事件。您不必担心传递事件对象不过,国内,该值是您居住的完整事件本身。

无论如何,重要的代码行是参加在那里我称之为addChild方法对我们的影片剪辑, imageArea 。请注意,我的论点传递给我们addChild方法是我们的装载机对象imageLoader 。这是此行的源代码,负责显示您的图片加载到您的imageArea影片剪辑,并把它内的事件处理的完整的情况下,我们必须确保我们的形象展示后才完全下载。


-------------------------------------------------- ------------------------------

功能imageLoading (英文: ProgressEvent ) :无效(
/ /使用它来获得当前的下载进度
/ /提示:您可以配合的价值观的preloader : )

早些时候,我们涵盖了imageLoaded的方法,是事件处理的完整的事件,你们现在看到的是事件处理程序为我们的进步活动。每一次的进步事件,这一方法得到imageLoading要求。如果你想创造一个preloader ,你会指定在这里。由于这是一个大题目完全,我将保存的讨论以后的时间。

环绕它的所有行动
表示不快!这是一个大量的工作约10行代码。总体而言,正如你所看到的,这是非常简单加载的外部形象到您的Flash应用程序。主要的事情是创建自己的装载机对象和填充其负载的方法与URLRequest载的路径形象要负载。

您的装载机对象是只负责下载图片到内存中,你可以注册事件在其contentLoaderInfo财产找出多少的形象已加载,也当形象已经完成下载。一旦你的形象已经下载,您只需拨打您的影片剪辑的addChild方法和它传给你的装载机对象。

本文来源:http://www.gdgbn.com/jiaocheng/16960/