As3.0的问题

有个函数functiona(a:int,b:int){},我现在有两个按钮(c,d),点击两按钮来调用函数,比如单击按钮c,函数a(0,2)在点击函数a(2,4),在点击... 有个函数 function a(a:int,b:int){ },我现在有两个按钮(c,d),点击两按钮来调用函数,比如单击按钮c,函数a(0,2)在点击函数a(2,4),在点击函数a(4,6),依次类推,a(6,8),a(8,10),a(10,12),规律就是函数的第二个参数个下一个组的第一个参数相同,d按钮则是反着来a(10,12) ,a(8,10) ,.....a(0,2),这些数字其实数组的索引。 展开
 我来答
alanbabbage
2013-11-11 · TA获得超过979个赞
知道小有建树答主
回答量:755
采纳率:0%
帮助的人:1169万
展开全部
var var_1:int = 0;//第一个参数
var var_2:int = 2;//第二个参数
var var_margin:int = 2;//第二个参数增长幅度

var a_num:int = 0;//aFun被调用次数
var b_num:int = 0;//bFun被调用次数

function aFun(a:int,b:int):void{
/**可以在这里添加判断,是否有上限*/
var_1 = b;
var_2 = b+var_margin;

a_num++;

trace("第 "+a_num+" 次调用aFun:("+a+","+b+")");

}

function bFun(a:int,b:int):void{
/**当第一个参数为0时不再减小*/
if(a==0){
return;
}
var_1 = a-var_margin;
var_2 = a;

b_num++;

trace("第 "+b_num+" 次调用bFun:("+a+","+b+")");

}

btn_a.addEventListener(MouseEvent.CLICK,clickFun);
btn_b.addEventListener(MouseEvent.CLICK,clickFun);

function clickFun(e:MouseEvent):void{
var btn:SimpleButton = e.currentTarget as SimpleButton;
if(!btn.enabled){
return;
}

switch(btn){
case btn_a:
aFun(var_1,var_2);
break;
case btn_b:
/**这里使用a按钮的参数,如果a,b按钮数据无关联,则将a按钮一样,添加两个不同的参数与记录即可*/
bFun(var_1,var_2);
break;
}
}
更多追问追答
追问
你应该理解错了我的意思。或许我说的不清楚,我是只有一个函数不是两个函数,也就是两个按钮都是调用一个函数,只是参数不同。
追答

明显说明不清楚,而且你只说明,第二个参数跟后一组的第一个参数相同,并不说明,第一组的第一个参数是否必定是0,而且,b按钮的参数呢?是不是就是代码中的var_1与var_2记录的值?完全不描述,你想让人不理解错误都难啊。


话说,函数a有什么作用?只是传两个参数进去,得出下一组的值?


如果是这样,那就使用上面的代码,合并aFun与bFun即可,至于区分a按钮调用还是b按钮调用,则可以用参数记录,之后在函数中区分,或是记录上一组参数值,再用来大小变化来区分,如,使用参数记录按钮点击的


var a_click:Boolean = false;//用来记录哪个按钮点击

/**两个按钮都是调用这个函数*/
function mainFun(a:int,b:int):void{
if(a_click){//判断是按钮a点击
aFun(a,b);
}else{
bFun(a,b);
}
/**PS:可以将函数用代码替换*/
}

点击函数中,记录按下的按钮

function clickFun(e:MouseEvent):void{
    var btn:SimpleButton = e.currentTarget as SimpleButton;
    if(!btn.enabled){
        return;
    }
     
    switch(btn){
        case btn_a:
a_click = true;
            mainFun(var_1,var_2);
            break;
        case btn_b:
a_click = false;
            mainFun(var_1,var_2);
            break;
    }
}
创作者zKdupiv20R
2019-06-30 · TA获得超过3650个赞
知道大有可为答主
回答量:3092
采纳率:24%
帮助的人:181万
展开全部
我就烦你骗小孩。你第一个类,参数都没赋给属性。别听他瞎掰,没那么复杂。弄个容器。判断鼠标在图像上按下,当前鼠标和原鼠标的Y轴或X轴距离,并让图像移动(鼠标当前坐标的X-原来鼠标的X)*-1
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式