Кнопка переключения вспышки - PullRequest
3 голосов
/ 18 февраля 2009

Мне нужна кнопка во Flash / AS3, которая переключается между включением и выключением. Поэтому я был рад видеть, что класс Button имеет свойство toggle, которое позволяет мне иметь такое поведение. Я был менее рад видеть, что то, что я получаю, когда делаю что-то "кнопку" в файле Flash, является экземпляром класса SimpleButton, у которого нет этой опции.

Есть ли способ получить экземпляр Button из .fla или заставить SimpleButton вести себя как переключатель?

Ответы [ 3 ]

6 голосов
/ 18 февраля 2009

Вот как я закодировал свой путь:

private buttonState:Boolean;

private function buttonToggle(button:SimpleButton){
    var currDown:DisplayObject = button.downState;
    button.downState = button.upState;
    button.upState = currDown;
    buttonState = !buttonState;
}

private function clickEvent(e:MouseEvent){
    buttonToggle(e.target);
}

Я не поместил код в функцию clickEvent, потому что это позволяет мне переключать кнопку из другого места в коде.

1 голос
/ 20 февраля 2009

Вы можете перетащить кнопку из окна компонентов. Это то, что вы ищете?

0 голосов
/ 18 февраля 2009

Я думаю, что это может вам помочь: http://actionscriptexamples.com/2008/11/26/creating-toggle-buttons-in-flash-with-actionscript-30/

Это только actionScript. Но это то же самое, если перетащить компонент Button на сцену и присвоить ему имя экземпляра. Таким образом, вы можете получить к нему доступ из скрипта as.

...