58 12
发新话题
打印

++ 加载外部图片及对加载图片的控制++

Tu老大,想死你啦……

引用:
以下是引用tuliping在2003-11-18 0:44:55的发言: 谢谢tajlolo找出了错误的地方,偶编辑一下。好久没来,顺便问候常来AS区的朋友.
Tu老大,想死你啦……[em03][em03][em03][em03][em03][em03][em03][em03][em03][em03][em03][em03][em03][em03][em03][em03][em03][em03][em03][em03][em03]

TOP

tajlolo 你怎么拿我的头像做例子捏? [em04][em04][em03][em03][em11][em11][em06][em06]


TOP

引用:
以下是引用卢巧音中文网在2003-11-17 13:44:16的发言: 我以前做完了这个的,Tu老大的这个由于输入不小心,多打了一个符号,细心的查一下就会发现了,效果非常不错!
是吗?那就麻烦卢卢做个发上来了 谢谢啦 [em12][em12][em12]

TOP

引用:
以下是引用ding8285在2003-11-18 12:45:19的发言: tajlolo 你怎么拿我的头像做例子捏? [em04][em04][em03][em03][em11][em11][em06][em06]


哈哈哈,晕哦,我一时找不到图片,随手在网上搞了一张,开始是搞“闪吧舞神的”,后来发现他的图片太大了,接下来是你回的贴,就顺手把你的图片复制下来了。
未征得你同意,侵犯了你的肖像权(不过是不是真人有点怀疑:),郑重道歉哦~~~~~~~~!

TOP

我觉得,动态加载图片,不能调节的原因是因为加载图片的影片,我们用createEmptyMovieClip()创建出来的影片,无论什么时候它的_width,_height属性都是0,这样 hitTest的值会一直为false,这样,我们根本无法判断是否在hitTest,所以,弹性也就无法实现了。
不过,我感觉这个程序还有别的问题,但是目前还没有想好到底那里不对头,过些时间再回帖

TOP

什么时候回帖啊???等不及了!!!!!!!!!!!!

什么时候回帖啊???等不及了!!!!!!!!!!!![em04]

TOP

不好意思,我在试这些功能呀!呵呵!

引用:
以下是引用Kissos在2003-11-23 13:06:41的发言: 我觉得,动态加载图片,不能调节的原因是因为加载图片的影片,我们用createEmptyMovieClip()创建出来的影片,无论什么时候它的_width,_height属性都是0,这样 hitTest的值会一直为false,这样,我们根本无法判断是否在hitTest,所以,弹性也就无法实现了。
不过,我感觉这个程序还有别的问题,但是目前还没有想好到底那里不对头,过些时间再回帖
[upload=gif]uploadfile/20031216176899366.gi

附件

20031216176899366.gif (27.03 KB)

2003-12-17 01:06, 下载次数: 34

TOP

引用:
以下是引用Kissos在2003-11-23 13:06:41的发言: 我觉得,动态加载图片,不能调节的原因是因为加载图片的影片,我们用createEmptyMovieClip()创建出来的影片,无论什么时候它的_width,_height属性都是0,这样 hitTest的值会一直为false,这样,我们根本无法判断是否在hitTest,所以,弹性也就无法实现了。
不过,我感觉这个程序还有别的问题,但是目前还没有想好到底那里不对头,过些时间再回帖
谁说用createEmptyMovieClip创建的MC来加载图片后高宽全是0的呀,不信可以自己试试!~你不能控制他的高宽,只是因为没有真正的完全载入在载入后一段时间里,MC会自动根据图片大小来改变自身的!~~~~~~~~~~

在onEnterFraem事件里加入trace(_width add "/" add _height)试试!

TOP

我把楼主的代码拷到文件上去.结果什么显示都没有. 如果可以的话,劳烦楼主公开一下源程.

TOP

这是代码及原文件

Stage.showMenu=false; Stage.scaleMode = "noBorder"; Stage.scaleMode = "noScale"; this.createEmptyMovieClip("preloader", 10000); this.createEmptyMovieClip("mc", 10001); mc.loadMovie("test.jpg"); mc._visible = false; preloader.onEnterFrame = function() { var l = mc.getBytesLoaded(); var t = mc.getBytesTotal(); var getPercent = l/t; loadText = Math.round(getPercent*100)+"%completed"; loadBar._width = getPercent*100; if (l>0 && l>=t) { mc._visible = 1; delete this.onEnterFrame; } MovieClip.prototype.jumpSkal = function(obj, besch, friktion) { this.tempo += (obj - this._xscale) * besch; this.tempo *= friktion; this._xscale = this._yscale += this.tempo; this._x = 275-(this._width/2); this._y = 200-(this._height/2);
}; mc.onEnterFrame = function() { if (this.hitTest(_root._xmouse, _root._ymouse, true)) { this.jumpSkal(70, .9, .6); } else { this.jumpSkal(30, .6, .5); } } };
PS:要想看到加载的情况请有空间的朋友自己试试。
文件为MX版本.[em00] [upload=rar]viewfile.asp?ID=82185[/upload]

附件

2003121623204365149.rar (37.41 KB)

2003-12-17 07:20, 下载次数: 244

TOP

你太棒了,中国无产阶级的代表!

TOP

这个例子中用到的图片,可以用外部调入的方式吗

不错,学到了很多! 但可以让下面这个例子中的图片,都用外部调入,还保持原来样式吗!
[upload=fla]viewfile.asp?ID=87883[/upload]

附件

200418134917011.fla (459.5 KB)

2004-1-8 21:04, 下载次数: 155

TOP

没有人知道吗???帮帮忙呀

TOP

怎么看不到

TOP

我知道为什么在2004中看不到效果了,变量tempo得在开始的时候初始话,即tempo=0
这样在2004的环境下也能够看到效果了,哈哈,t大哥对吧

TOP

不行啊~不能正常显示百分比~
不过在FLASH MX 测试环境下又正常,不知是何原因~

TOP

请问:.jump = function是什么作用!
去掉MovieClip.prototype就不行了!?

TOP

MovieClip.prototype.jumpSkal = function(obj, besch, friktion) {
this.tempo += (obj - this._xscale) * besch;
this.tempo *= friktion;
this._xscale = this._yscale += this.tempo;
this._x = 275-(this._width/2);
this._y = 200-(this._height/2);
};
mc.onEnterFrame = function() {
if (this.hitTest(_root._xmouse, _root._ymouse, true)) {
this.jumpSkal(70, .9, .6);
} else {
this.jumpSkal(30, .6, .5);
}
}
这些代码什么意思,好像没用的么

TOP

2004版……自己改了一下

Stage.showMenu = false;
//屏蔽右键,当然这样无法完全屏蔽
Stage.scaleMode = "noBorder";
//播放器无菜单
Stage.scaleMode = "noScale";
//禁止缩放
//上面的代码只是个人的爱好。
this.createEmptyMovieClip("preloader", 10001);
this.createEmptyMovieClip("mc", 10000);
//动态创建一 mc,用来装载图片
mc.loadMovie("test.jpg");
//load 一名为test的图片(jpg格式)
mc._visible = false;
//先令mc不可见
//------------------------------------------------
preloader.onEnterFrame = function() {
var l = mc.getBytesLoaded();
var t = mc.getBytesTotal();
var getPercent = l/t;
loadText = Math.round(getPercent*100)+"%completed";
//一动态文本框的var: loadTest
loadBar._width = getPercent*100;
//进度条的长度,主场景中其 instance name: loadBar
if (l>0 && l>=t) {
mc._visible = 1;
delete this.onEnterFrame;
//加载完毕后令mc可见,并stop loop (delete this.onEnterFrame;)
}
};
// ----------------------这段代码就是用来判断加载的情况
//-------------------------------------------------------------------------------
MovieClip.prototype.jump = function(scale, frequency, quotiety) {
//三个参数,scale--图片的比例 frequency---弹性的频率 quotiety---弹性系数
tempo = 0; //不赋值不行……
tempo += (scale-this._xscale)*frequency;
tempo *= quotiety;
this._xscale = this._yscale += tempo;
//令图片位于场景的中间(550X400)
this._x = 275-(this._width/2);
this._y = 200-(this._height/2);
};
//--------图片弹性效果的设置,这种效果你可以用在其它方面,比如按钮
//-----------判断鼠标事件,当鼠标与图片碰撞时调用自定义的函数并赋值
this.onEnterFrame = function() { //mc.onEnterFrame 不能用?改改……
if (mc.hitTest(_root._xmouse, _root._ymouse, true)) {
mc.jump(70, .9, .6);
} else {
mc.jump(30, .6, .5);
}
}

TOP

mx 与 mx2004的编程有区别的吗?怎么个区别法

TOP

好贴,学习中ing ,谢谢楼主

TOP

onClipEvent (load)
{
        mc = screen.createEmptyMovieClip("point"+counter, counter+1);
        mc.loadMovie(url+"image2k/image"+counter+".jpg");
    total = _root.picload.mc.getBytesTotal();
}

// [onClipEvent of sprite 10 in frame 1]
onClipEvent (enterFrame)
{
    loaded = _parent.mc.getBytesLoaded();
    percent = int(loaded / total * 100);
    text = percent + "%";
    gotoAndStop(percent);
    if (loaded>0 && loaded== total)
    {
        _parent.gotoAndPlay(2);
                delete this.onEnterFrame;
    } // end if
}
我这个为什么只能出现场景的loading,图片的loading怎么出不来啊,还有我想最好能把所有图片都加载完了再显示出来该怎么做啊,最好像加载一个swf文件一样,谢谢

TOP

期待有高手能给分析一下阿

TOP

,没有建设性的代码,也不回车............

建议用MovieClipLoader来做控制,貌似adobe还是MM这么说的,忘记了.....

不过貌似mc.LoadMovie(jpg)是得不到图片的大小的,而MovieClipLoader则可以,
欢迎来端老窝 => www.z-order.cn

TOP

此贴N年前就看过。。不晓得是不是非原版??

TOP

广告牌招租网

TOP

学习了

TOP

 58 12
发新话题