Состояние кнопки Flex 4 в HGroup - PullRequest
0 голосов
/ 11 мая 2010

У меня есть HGroup с несколькими кнопками внутри, которые являются меню моего приложения.

<s:HGroup id="nav">
    <s:Button id="homeButton" label="Home" />
    <s:Button id="showroomButton" label="Showroom" />
    <s:Button label="Catalogue" />
    <s:Button label="Offers" />
    <s:Button label="My Account" />
    <s:Button label="My Orders" />
</s:HGroup>

Что я хочу, так это когда я нажимаю, например, #homeButton, чтобы изменить его состояние на «over», отключить его и сбросить все остальные кнопки в состояние «up».

Я написал эту функцию

    private function resetNavState():void {
        for(var i:int = 0,ii:int = nav.numChildren-1;i<ii;i++) {
        Button(nav.getChildAt(i)).mouseEnabled = true;
        Button(nav.getChildAt(i)).skin.setCurrentState("up",true);
    }
}

А затем в обработчике кликов homeButton, например, я использую

protected function homeButton_clickHandler(event:MouseEvent):void
{
    resetNavState();
    currentState = "home";
    homeButton.skin.setCurrentState("over",true);
    homeButton.mouseEnabled = false;

}

Я сбрасываю состояния кнопок #nav, но это не меняет состояние нажатой кнопки.

Есть идеи?

Спасибо заранее

1 Ответ

0 голосов
/ 11 мая 2010

Вы хотите поместить кнопки в элемент управления <s:ButtonBar />, а не в HGroup.

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