面对一项新的东西我们总是会感到新奇,总想去把它搞懂,可往往我们做着做着却达不到我们的目的。于是我们就选择了放弃,其实我感觉这些不是我们的错。因为我们参考的是“九阳真经”,实在是高深不测。我们没有向“阿波”那样的天分,却又有他那样的性格。呵呵!其实我也不知道自己在唠叨什么!我实际想说,我只是江湖中的一小角色,我只需真经里那么点皮毛就可以了,我不想学习什么打坐,什么炼气,我只是想在江湖行走中,有那么点“Kung Fu”。
呵呵!老鸟或是大侠,你老路过如果感觉路数不对可以指教,但希望你老人家慈祥点,不要老打我们小鸟的PP.我这里只不过是些三脚猫功夫的体会。看我们如果还是有用之才,或是还可以踏入这个行业,还请多多指教。那现在开始了。
一.加载外部图片(.jpg,.png,.gif….)或外部影片
在这篇文章里我将给大家演练怎么用一个创建好的影片剪辑(MC)加载外部图像,如果你跟着我做了那么最后你会看见如下图
来让我们开始动手吧。
1.当然第一件事情上你的打开flash cs3了,嘿嘿!新建一个flash cs3文件。保存为loadimage;在这里为了让加载的外部图片完全显示我把宽和高设置为图片的宽和高了。背景啊什么的默认就ok了。
2.再回到flash编辑器。新建一个影片剪辑loaderimage_mc -----(快捷键Ctrl+F8),如图设置参数
3.这个时候我们进入了loaderimage_mc编辑界面。按下如图所示的“场景一”,回到主场景
4.这个时候你会发现场景上没有任何元素,那么现在我们就从库中(F11或CTRL+L)把刚才创建好的loaderimage_mc影片剪辑拖到场景。
如果你操作成功那么你就会看到场景中小圆圈代表的空影片剪辑
5.选择刚才的空影片剪辑起实例名称如图
6.把你的将要载入图片放到与loadimage.swf同一个目录下。
8.加入代码
8.1,在主场景新建一图层并且命名Action 如图
8.2选中Action图层的第一帧,打开动作编辑窗口(F9)
复制内容到剪贴板
代码:
//创建一个Loader类变量
var imageLoader:Loader;
function loadImage(url:String):void {
// 创建Loader类实例
imageLoader = new Loader();
// Loader类的load()方法负责加载图片或.swf文件,他以一个URLRequest对象为参数指出加载对象的路径(URL)
imageLoader.load(new URLRequest(url));
//当载入内容有进度时,调用函数imageLoading
imageLoader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, imageLoading);
//当载入内容全部完成时,调用函数imageLoaded
imageLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, imageLoaded);
}
//调用函数loadImage,并且传递参数"abo.jpg"
loadImage("abo.jpg");
function imageLoaded(e:Event):void {
// 把 imageLoader 加入到loaderImage_mc显示清单中
loaderImage_mc.addChild(imageLoader);
}
function imageLoading(e:ProgressEvent):void {
//这里可以放加载滚动条的代码
} 9.哈哈!!晚上2点睡下去,由于喝多了咖啡,导致整夜几乎没有睡!苦咖啡一杯又一杯啊!
嘿嘿!如果你按我的步骤一步一步做了,那么现在你只要按下CTRL+ENTER就可以看见外面的图片abo.jpg被加载进来。当然这个时候你是没有感觉的,因为在本地,但是如果你在按下一遍CTRL+Enter那么你就会发现有那么一会白色然后图片才刷一下进来。(随后我们会处理这块的)
一(2).当然我们可以完全利用文档类实现现在的效果。下面我简单付图说明
1. 新建一个flash AS3文档。命名自己爱好。
2. 新建一个ActionScript文件,命名为LoaderImage.as这里可不能随意了啊。不然出不来效果
3. 在LoaderImage.as文档里添加如下代码
引用:
package {
import flash.display.Sprite;
import flash.display.Loader;
import flash.events.Event;
import flash.events.ProgressEvent;
import flash.net.URLRequest;
public class LoaderImage extends Sprite {
private var imageLoader:Loader;
private var loaderImage_mc:Sprite;
public function LoaderImage() {
loaderImage_mc=new Sprite();
addChild(loaderImage_mc);
imageLoader = new Loader();
// Loader类的load()方法负责加载图片或.swf文件,他以一个URLRequest对象为参数指出加载对象的路径(URL)
imageLoader.load(new URLRequest("abo.jpg"));
//当载入内容有进度时,调用函数imageLoading
imageLoader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, imageLoading);
//当载入内容全部完成时,调用函数imageLoaded
imageLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, imageLoaded);
}
private function imageLoaded(e:Event):void {
// 把 imageLoader 加入到loaderImage_mc显示清单中
loaderImage_mc.addChild(imageLoader);
}
private function imageLoading(e:ProgressEvent):void {
//这里可以放加载滚动条的代码
}
}
}
4.在返回到你新建的flash AS3文件
在属性面板的文档类添入:LoaderImage
5、嘿嘿!现在你在按下Ctrl+Enter你就会看见同上面一样的效果
下面附源文件
===========================================================================================================================
小虾们如果对你有点帮助的话!嘿嘿那么请给点鼓励!!!
[
本帖最后由 咖啡虫 于 2008-6-24 11:06 编辑 ]