Отключение кнопки в проблеме AS3 - PullRequest
0 голосов
/ 13 апреля 2009

Я хочу динамически создавать простое меню вкладок и хочу, чтобы в самом начале работы с моим приложением была включена только самая первая вкладка, остальные будут включены позже. Однако после экспорта фильма вкладки не активируются (курсор не отображается как рука), но когда я нажимаю на одну из них, запускается ее код. Где может быть проблема? Это мой код (пока у меня только две вкладки):

var shieldTab = new Tab("Shield", "shieldMenu", 590,120);
this.addChild(shieldTab);
mainMenu.push(shieldTab);
var orderTab = new Tab("Order", "orderMenu", 590+shieldTab.width, 120);
this.addChild(orderTab);
mainMenu.push(orderTab);

for each (var tab:SimpleButton in mainMenu){
    tab.addEventListener(MouseEvent.CLICK, showMenu);
}

this.orderTab.enabled = false;

и это класс Tab:

package coa.application{
    import flash.display.SimpleButton;
    import flash.text.*;

    public class Tab extends SimpleButton {

        public var menuType:String;

        public function Tab(tabText:String, menuType:String, x:Number, y:Number) {
            this.menuType=menuType;
            var mytext:TextField=new TextField();
            var fm:TextFormat = new TextFormat("Verdana", 18);
            mytext.autoSize = TextFieldAutoSize.CENTER;
            mytext.text=tabText;
            mytext.border = true;
            mytext.selectable = false;
            mytext.background = true;
            mytext.setTextFormat(fm);
            upState = overState = downState = hitTestState = mytext;
            this.x=x;
            this.y=y;

        }
    }
}

1 Ответ

1 голос
/ 13 апреля 2009

Я не думаю, что есть свойство "enabled". Вы пробовали просто mouseEnabled в false. Или даже лучше. Создайте включенное свойство в классе вкладок, а затем проверьте это в showMenu. Тогда вы можете просто игнорировать щелчок, если вкладка не включена.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...