0

嘿伙计们,我想问你们如何做到这一点,因为我是编程新手,我仍在试图弄清楚如何做到这一点。

我正在用空气构建一个应用程序,我有几个带开关盒的按钮。

现在我所有的按钮都是movieclips按钮,所以当你点击它们时,它们会转到点击的图像并返回向上的图像。

加上一些按钮,我希望有一个长按功能,可以更快地增加。

我希望我在这里有意义


这是我的一些加号和减号按钮

    master.pages.numPlayers.minusBtn1.addEventListener(MouseEvent.CLICK, incrementAmount);
    master.pages.numPlayers.plusBtn1.addEventListener(MouseEvent.CLICK, incrementAmount);
    master.pages.numBuyIns.minusBtn2.addEventListener(MouseEvent.CLICK, incrementAmount);
    master.pages.numBuyIns.plusBtn2.addEventListener(MouseEvent.CLICK, incrementAmount);
    master.pages.numPayouts.minusBtn3.addEventListener(MouseEvent.CLICK, incrementAmount);
    master.pages.numPayouts.plusBtn3.addEventListener(MouseEvent.CLICK, incrementAmount);

这是我的开关盒的功能处理程序我希望这些按钮具有两种类型的行为,长按增量更快,并且只是常规单击增量

private function incrementAmount(event:MouseEvent):void {
    switch (event.currentTarget.name) {
        // number of players
        case  "minusBtn1" :
            if (numPlayers >= 3) {
                numPlayers--;
                firstBuild();
                trace("minus");
            }
            break;

        case  "plusBtn1" :
               numPlayers++;
               firstBuild();
               trace("plus");
            break;

        // number of buy ins money
        case  "minusBtn2" :
            if (numBuyIns >= 1) {
                numBuyIns--;
                firstBuild();
                trace("minus");
            }
            break;

        case  "plusBtn2" :
               numBuyIns++;
               firstBuild();
               trace("plus");
            break;

        // number of payouts
        case  "minusBtn3" :
            if (numPayouts >= 2) {
                numPayouts--;
                firstBuild();
                trace("minus");
            }
            break;

        case  "plusBtn3" :
               numPayouts++;
               firstBuild();
               trace("plus");
            break;

    }
}

其他具有常规点击行为的按钮

private function onClickTab(event:MouseEvent):void {
    switch (event.currentTarget.name) {
        case  "chips" :
            master.pages.x = 20;
            break;

        case  "payout"  :
            master.pages.x = -704;
            break;

        case  "timer" :
            master.pages.x = -1457;
            break;
    }
}
4

1 回答 1

0
public class PlusButton extends Button
{
    private var m_blnSpedUp:Boolean = false;
    private var m_tmr:Timer = new Timer(1500, 1); // use whatever number of
                                                  // milliseconds you prefer here

    public function PlusButton()
    {
        addEventListener(MouseEvent.DOWN, onDown);
        addEventListener(MouseEvent.UP, onUp);
    }

    private function onDown(pEvent:MouseEvent):void
    {
        // increment here
        if (!m_blnSpedUp)
        {
            // start the timer here
        }
    }

    private function onUp(pEvent:MouseEvent):void
    {
        // stop the timer here
    }

    private function tick(pEvent:TimerEvent):void
    {
        m_blnSpedUp = true;
        // speed up here
    }
}

希望这会让你开始,如果我理解你的问题是正确的。尝试以此为起点。

于 2013-05-24T18:14:10.103 回答