永发信息网

flash中怎么令线段的长度跟随滑块的拖动而变化?急 在线等

答案:2  悬赏:0  手机版
解决时间 2021-04-23 21:23
我的代码是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左边之后线段不会反向,请问怎样才能让它的能够反向而且变化流畅起来并且粗细不变呢?



最佳答案
先要获得两点坐标。
使用勾股定理,用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);
然后播放就可以了!!!
全部回答
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(); } } }
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
南昌哪里有修拉杆箱的地方?
真三国无双3斩玉问题
电脑老掉线怎么办
苏泊尔C21-SDHC9E15电磁炉怎么样
女人生活短句唯美句子,唯美的句子。有意境的
我失去了一个体很值得去爱的人,怎么办?
最近有没有谁要开演唱会
女人最怕的年龄如何防
红烧狮子头这道菜怎么做?
QQ三国里那些副本要几级才能单刷?
找個搜狗皮肤
今天自己去北京,给个建议把
传真机上老是不停的闪现OPEN CABINET check f
寿衣大全在哪里啊,我有事要去这个地方
欧米茄星座系列的是黄金的好看还是玫瑰金的好
推荐资讯
中国现在为什么不拍古装电视剧呢?
起亚k5换电瓶要注意哪一点
手机如何开通蓝钻?
QQ飞行岛为什么升了级下一下就回到以前的等级
肯普法结局,主角和谁在一起啊?会长怎么样了
求一个梦幻群侠传3存档
上面并列两个目 下面一个崔的下半部分 念什
q币不能卖的东西有什么
DNF宠物熊猫的问题?
如何算排卵期,我的月经总是推迟几天,那这个
我国建立和发展核力量的根本目的和出发点是什
为什么有些人很虚伪呢?
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?