在Flex中,如何将Fxg文件用作MenuBar Icon属性?

我有一点担心。 我开始尝试使用FXG格式制作自定义图标的MenuBar控件。

在我的项目文件夹中的“assets.graphics.icons”中有3个FXG文件:

  • SRC /资产/图形/图标/ MenuIcon.fxg
  • SRC /资产/图形/图标/ ItemAIcon.fxg
  • SRC /资产/图形/图标/ ItemBIcon.fxg
  • 阅读以下两个链接和一堆网页后。

  • http://blog.flexexamples.com/2010/01/29/displaying-icons-in-an-mx-menu bar-control-in-flex /
  • http://livedocs.adobe.com/flex/3/html/help.html?content=menucontrols_3 .html
  • 我结束了这个代码:

    <?xml version="1.0" encoding="utf-8"?>
    
    <!-- src/myMenuBarApplication.mxml -->
    
    
    
    <mx:Application name="myMenuBarApplication"
                    xmlns:mx="http://www.adobe.com/2006/mxml"
                    xmlns:components="assets.graphics.icons.*">
    
         <mx:MenuBar id="myMenuBar" iconField="@icon" labelField="@label" showRoot="true">
              <fx:XMLList>
    
                   <menuitem label="Menu" icon="">
                        <menuitem label="Item A" icon="">
                             <menuitem label="SubItem A1"/>
                             <menuitem label="SubItem A2"/>
                        </menuitem>
                        <menuitem label="Item B" icon="">
                             <menuitem label="SubItem B1"/>
                             <menuitem label="SubItem B2"/>
                        </menuitem>
                   </menuitem>
    
              </fx:XMLList>
         </mx:MenuBar>
    
    
    </mx:Application>
    

    我了解到,您可以使用任何图像文件添加标签并使用以下代码

    <mx:Script>
        <![CDATA[
            [Embed("assets/graphics/images/MenuIcon.png")]
            public const MenuIconConst:Class;
        ]]>
    </mx:Script>
    

    将常数名称添加到MenuBar控件的图标属性中,如下所示:

    所以我试图做到这一点没有运气:

    <mx:Script>
        <![CDATA[
            import assets.graphics.icons.*;
            [Bindable]
            public var MenuIconVar:Class = new MenuIcon() as Class;
            // MenuIcon is one of my FXG files inside assets.graphics.icons
        ]]>
    </mx:Script>
    

    我发现了一个不同的网页,您必须创建一个库来嵌入Fxg文件,然后将它们用作类名称或类似的东西,但我并没有很好地理解它。

    实际情况是,我一直试图以许多不同的方式将任何fxg组件放在MenuBar的图标属性中,但没有运气。 我真的希望有人已经做出了这样的事情。 我将不胜感激任何帮助。


    如果你像对待任何一个MXML类那样对待它,它实际上比你想象的更容易。

    所以,“assets / graphics / images / MenuIcon.fxg”会变成assets.graphics.images.MenuIcon。 由于字符串不是类,因此需要使用绑定表达式将类分配给图标属性。

    <menuitem label="Item A" icon="{assets.graphics.images.MenuIcon}">
         <menuitem label="SubItem A1"/>
         <menuitem label="SubItem A2"/>
    </menuitem>
    

    您可能还需要先导入课堂......我无法回想起我的头脑。

    链接地址: http://www.djcxy.com/p/18309.html

    上一篇: In Flex, How can I use an Fxg file as a MenuBar Icon attribute?

    下一篇: The operation couldn’t be completed. (com.facebook.sdk.login error 301.)