flash如何控制外部加载的图片大小的解决方法
来源:互联网 发布:身份证住宿登记软件 编辑:程序博客网 时间:2024/05/16 08:53
很多人出现flash加载外部图片而不能控制显示大小的问题,导致这样问题的原因其实是因为flash在加载图片是采用渐进式的方式,在图片没有加载完成的时候,flash是不知道你的图片的大小的和尺寸的属性的。所以你在程序中即时加入控制大小的代码也无法控制图片。因为代码往往在图片还没有加载完之前就执行了,也就是说你的代码是找不到执行的对象的。所以使用_width和_height代码是无效的。而_xscale和_yscale可以执行但是因为是按照百分比计算的,所以也不能控制不同大小的图片最后显示同样大小的尺寸。
解决办法:
loadClip代码,我想你应该也是知道的, loadClip代码就是解决这个问题的最佳人选了。loadMovie属于初级代码,它没有侦听器这样的属性,因此无法捕捉到文件的属性(大小,尺寸)。因此我们不推荐使用这个代码,如果你的flash只是用于本机播放的,不存在网络延迟那么也就无所谓的了,但是如果你要控制加载图片的大小,那么还是需要用loadClip即时你的flash是本地播放的,因为即时加载本地的图片,加载图片的时间肯定也是滞后于代码执行的,因此我们选用loadClip代码,作为加载外部文件的最佳代码。
我们看以下它侦听器的各项属性:(我这里就讲一个了)
onLoadInit
属性是用于检测文件状态属性的
这个属性非常的重要,因为它能告诉你图片的各项属性,也就是只有这个时候你才能知道文件的尺寸大小。你可以试一下trace(MC._width)是不是就是图片的大小。如果是,就证明图片已经加载完毕,并且你可以通过程序去控制它的大小了。
onLoadInit= function(target_mc:MovieClip){
target_mc._width=100;
target_mc._height=100;
}
看看是不是加载近来的图片就是100像素*100像素的显示了,你可以通过程序自由控制加载近来的图片大小了。
延伸代码,如何让你的图片可以宽是100像素而高是等比缩放的呢?
onLoadInit = function(target_mc:MovieClip){
target_mc._height=(100*target_mc._height)/target_mc._width;
target_mc._width=100;
}
target_mc._height=(100*target_mc._height)/target_mc._width;
放在上面很重要的哦,千万不要这样放:
target_mc._width=100;
target_mc._height=(100*target_mc._height)/target_mc._width;
这样你的高肯定不是等比率的。
通过以上讲解是不是可以啦!
参考flash帮助文档,我弄了个简单的实验效果,大家可以直接复制粘贴
this.createEmptyMovieClip("image_mc", this.getNextHighestDepth());
var mclListener:Object = new Object();
mclListener.onLoadInit = function(target_mc:MovieClip) {
target_mc._width = 100;
target_mc._height = 100
};
var image_mcl:MovieClipLoader = new MovieClipLoader();
image_mcl.addListener(mclListener);
image_mcl.loadClip("http://www.helpexamples.com/flash/images/image1.jpg", image_mc);
可以测试代码效果
- flash如何控制外部加载的图片大小的解决方法
- flash如何控制外部加载的图片大小的解决方法
- 控制图片大小的js
- 如何加载外部FLASH文件
- 加载外部flash域的问题
- 控制图片大小的操作- -javascript
- css控制图片大小的方法
- 【JavaScript】控制图片大小的代码
- CSS控制图片大小的方法
- CSS控制图片大小的方法
- bf533 flash加载失败的解决方法之一
- FLASH中如何加载外部图片
- Flash如何加载外部wav文件
- Flash Builder几种加载外部素材的的方法
- 基于ARM9内核Processor外部NAND FLASH的控制实现
- 基于ARM9内核Processor外部NAND FLASH的控制实现
- Flash加载外部文件的各种方法与技巧
- 在flash中加载外部.SWF文件的方法
- linux解压 tar命令
- javascript 获取网页内某一元素的坐标
- RichFaces框架的基本概念架 (2)
- word的读取与写入
- 照片变白
- flash如何控制外部加载的图片大小的解决方法
- [JS特效]时钟随鼠标移动和旋转
- ASP.NET 中使用Fckeditor 2.6.4
- 华为路由
- PHP截取字符串[GB2312-UTF8编码]
- asp.net通过UrlRewrite实现二级域名或多级域名(蒋能忠原创)
- 关于showModalDialog打开页面后提交数据总打开新页面问题
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(62):__builtin_return_address
- C# 委托的妙文【转】