我有点担心。我开始尝试使用已经以FXG格式制作的自定义图标来制作MenuBar控件。
我在项目文件夹中的“assets.graphics.icons”中有3个FXG文件:
阅读以下两个链接和一堆网页后。
我最终得到了这段代码:
<?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控件的icon属性,如下所示:
所以我试着这样做没有运气:
<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的图标属性中而没有运气。 我真的希望有人已经做过这样的事情。 我将不胜感激任何帮助。
答案 0 :(得分:0)
如果您只是像对待任何一个'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>
您可能还需要先导入课程......我无法回想起我的头脑。