我的代码是on (press) { startDrag("slider",true,9.5,66,480,66); var a = Math.abs(slider._x-160.8) mc._width = a}on (release) { stopDrag();}其中slider是可拖动的滑块。mc是需要变化的线段,但是滑块和线段的运动都不平滑,而且线段的变化点一下才变一下,拖动的过程中不会随着鼠标而改变,而且它的粗细也会变,并且当滑块移到160.8左边之后线段不会反向,请问怎样才能让它的能够反向而且变化流畅起来并且粗细不变呢?
flash中怎么令线段的长度跟随滑块的拖动而变化?急 在线等
答案:2 悬赏:0 手机版
解决时间 2021-04-23 21:23
- 提问者网友:沉默的哀伤
- 2021-04-23 00:53
最佳答案
- 五星知识达人网友:渊鱼
- 2021-04-23 02:26
先要获得两点坐标。
使用勾股定理,用square root[(x1-x2)^2+(y1-y2)^2] (抱歉,打不了根号) //自己翻译成flash脚本!
得出来的使用函数math.floor
然后让它每一定时间刷新一次(也就是到达结束时再次跳转到开头,然后重新执行一次代码)(1秒内应该可以算实时测量吧!)
具体操作:
获得两个点的坐标,且要设置一个点可以拖动,用on (press) startDrag(true); on (release) stopDrag();之类的东西。
放置个文本,变量为abc
然后在第一帧的代码中写一下abc=Math.sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2))
然后在第12帧上写gotoAndPlay(1);
然后播放就可以了!!!
使用勾股定理,用square root[(x1-x2)^2+(y1-y2)^2] (抱歉,打不了根号) //自己翻译成flash脚本!
得出来的使用函数math.floor
然后让它每一定时间刷新一次(也就是到达结束时再次跳转到开头,然后重新执行一次代码)(1秒内应该可以算实时测量吧!)
具体操作:
获得两个点的坐标,且要设置一个点可以拖动,用on (press) startDrag(true); on (release) stopDrag();之类的东西。
放置个文本,变量为abc
然后在第一帧的代码中写一下abc=Math.sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2))
然后在第12帧上写gotoAndPlay(1);
然后播放就可以了!!!
全部回答
- 1楼网友:末日狂欢
- 2021-04-23 02:58
btn_play.onpress = function():void{ startdrag(this,false,stage.width/2 - this._width*2,this._y ,stage.width/2,this._y)
}
btn_play.onrelease = btn_play.onreleaseoutside = function():void{ stopdrag();
}
onenterframe = function():void{ if(btn_play._x < stage.width/2){
if(mc._currentframe == mc._totalframes){
mc.gotoandstop(1);
} else {
mc.nextframe();
}
} else {
if(mc._currentframe == 1){
mc.gotoandstop(mc._totalframes);
} else {
mc.prevframe();
}
}
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯