如何在flex中给出超链接

时间:2010-06-11 19:25:10

标签: flex actionscript

我的flex源代码如下: -

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
layout="absolute">
<mx:MenuBar labelField="@label">
<mx:XMLList>
<menuitem label="File">
<menuitem label="New" />
<menuitem label="Open"/>
</menuitem>
<menuitem label="Edit"/>
<menuitem label="Source"/>
</mx:XMLList>
</mx:MenuBar>
</mx:Application>

我想点击新网址www.google.com应该打开,然后我将如何执行此操作。

2 个答案:

答案 0 :(得分:3)

现在你添加了代码,你要做的就是在MenuBar中添加一个点击处理程序。

根据我过去的答案,你必须这样做。

1st:向MenuBar添加ID(推荐) 第二:做这样的事情:

http://livedocs.adobe.com/flex/3/langref/mx/controls/MenuBar.html

我从Adobe示例中获取了代码,您可以在上面的链接中看到它。

<mx:MenuBar labelField="@label" itemClick="menuHandler(event);" />

// Event handler for the MenuBar control's itemClick event.
            private function menuHandler(event:MenuEvent):void  {
                // Don't open the Alert for a menu bar item that 
                // opens a popup submenu.
                if (event.item.@data != "top") {
                    Alert.show("Label: " + event.item.@label + "\n" + 
                        "Data: " + event.item.@data, "Clicked menu item");
                }        
            }

将脚本块和事件处理程序添加到MenuBar后,您可以根据当前项目处理事件,并且可以添加第一个答案中的内容:

if(event.item.@label == "What ever you need"))
{
 navigateToURL(new URLRequest("http://www.google.com"), "_blank");
}

希望它有所帮助!!

答案 1 :(得分:1)

如果要在新窗口中从FLEX应用程序打开URL,则必须使用AS3执行此操作:

navigateToURL(新的URLRequest(“您的网址)”,“OPTION”);

选项可以是:

_blank:在新窗口或标签页中打开。

_self:在当前窗口或标签中打开。

示例:

navigateToURL(new URLRequest("http://www.google.com"), "_blank");

...会在新标签页上打开Goog​​le。

希望这就是你要找的东西。