У меня есть небольшое беспокойство. Я начал пытаться создать элемент управления MenuBar с пользовательскими значками, уже сделанными в формате FXG.
У меня есть 3 файла FXG в "assets.graphics.icons" внутри папки моего проекта:
- 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>
Добавление имени константы в атрибут icon элемента управления 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 разными способами, но безуспешно.
Я действительно надеюсь, что кто-то уже сделал что-то подобное.
Буду признателен за любую помощь.