flex tabnavigator 选项卡点击事件

发布于 2024-10-15 07:41:51 字数 204 浏览 8 评论 0原文

我有一个 ,它有一些 标签作为孩子。我希望选项卡在单击它们时调度一个事件。我尝试了 NavigatorContent 中的“单击”事件,但它没有执行任何操作。有人有这方面的经验吗? 谢谢

I have a <mx:TabNavigator> which has some <s:NavigatorContent> tags as children . I want the tabs to dispatch an event when I click them . I tried the "click" event in NavigatorContent but it didn't do anything . anyone has any experience with it?
thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

扬花落满肩 2024-10-22 07:41:51

你好
我相信使用演出活动可能会达到您想要的效果?

我希望在显示特定内容时触发一个事件,并且我希望为选项卡导航器的每个导航器内容执行不同的操作。

希望它对某人有帮助:)

Hi
i believe using the show event might do what you want?

i wanted an event triggered when the particular is shown, and i wanted a different action for each navigatorcontent of my tabnavigator.

hope it helps someone :)

白龙吟 2024-10-22 07:41:51
<mx:Module>
    <mx:TitleWindow id="tw" creationComplete="{init();}">
        <mx:Script>
            <![CDATA[
                import mx.controls.Button;
                import mx.events.FlexEvent;
                private function init():void {
                    for (var i:int=0; i<tabNav.getChildren().length; i++)  
                    {  
                        var tab:Button = tabNav.getTabAt(i);  
                        tab.addEventListener(FlexEvent.BUTTON_DOWN,tabClickHandler);  
                    }  
                }
                private function onClickTab(event:Event):void {
                    tw.title="onClickTab:"+event.target;
                }
                private function tabClickHandler(event:FlexEvent):void {
                    for (var i:int=0; i<tabNav.getChildren().length; i++)  
                    {  
                        if (event.target == tabNav.getTabAt(i)) {
                            var child:Object = tabNav.getChildAt(i);
                            child.dispatchEvent(new MouseEvent(MouseEvent.CLICK)); 
                            break;
                        }
                    }  
                }  
            ]]>
        </mx:Script>
        <mx:TabNavigator id="tabNav" width="200" height="200">
            <mx:VBox id="vbTab1" label="Tab 1" click="onClickTab(event)">
            </mx:VBox>
            <mx:VBox id="vbTab2" label="Tab 2" click="onClickTab(event)">
            </mx:VBox>
        </mx:TabNavigator>
    </mx:TitleWindow>
</mx:Module>
<mx:Module>
    <mx:TitleWindow id="tw" creationComplete="{init();}">
        <mx:Script>
            <![CDATA[
                import mx.controls.Button;
                import mx.events.FlexEvent;
                private function init():void {
                    for (var i:int=0; i<tabNav.getChildren().length; i++)  
                    {  
                        var tab:Button = tabNav.getTabAt(i);  
                        tab.addEventListener(FlexEvent.BUTTON_DOWN,tabClickHandler);  
                    }  
                }
                private function onClickTab(event:Event):void {
                    tw.title="onClickTab:"+event.target;
                }
                private function tabClickHandler(event:FlexEvent):void {
                    for (var i:int=0; i<tabNav.getChildren().length; i++)  
                    {  
                        if (event.target == tabNav.getTabAt(i)) {
                            var child:Object = tabNav.getChildAt(i);
                            child.dispatchEvent(new MouseEvent(MouseEvent.CLICK)); 
                            break;
                        }
                    }  
                }  
            ]]>
        </mx:Script>
        <mx:TabNavigator id="tabNav" width="200" height="200">
            <mx:VBox id="vbTab1" label="Tab 1" click="onClickTab(event)">
            </mx:VBox>
            <mx:VBox id="vbTab2" label="Tab 2" click="onClickTab(event)">
            </mx:VBox>
        </mx:TabNavigator>
    </mx:TitleWindow>
</mx:Module>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文