swc にリソースが埋め込めない

ボタンをいくつか縦に並べたメニューをライブラリに移したんだけど、うまく動かなかった。メニューにはそれぞれ違った背景画像を使うんだけど、その画像が表示されない。どうやら埋め込まれていないのが原因らしい。プロジェクトのプロパティで、swc に含めるように指定したはずなんだけど…。

メニュー項目は、背景画像とテキストだけが異なるがその他の設定は共通なので、 Repeater を使って次のように書いた。(関係ない属性は省略した)

<!-- メニューボタンを縦に並べる(画像が埋め込まれない) -->
<mx:Repeater id="menuRepeater" dataProvider="{menuItemArray}">
  <mx:Canvas backgroundImage="{menuRepeater.currentItem.imgpath}">
    <mx:VBox width="100" height="100" click="(略)">
      <mx:Text htmlText="{menuRepeater.currentItem.title}"/>
    </mx:VBox>
  </mx:Canvas>
</mx:Repeater>

メニュー項目を1つずつ書いて背景画像を直接 "@Embed" 指定すると埋め込まれるんだけど、Repeater を使った場合にはその書き方は無理。
ちょっと調べたら、次のように書くと埋め込まれるという記述を発見した。

[Embed(source="assets/menu01.jpg")] [Bindable] private var menu01 : Class;

これも試したけどだめでした。なんでだ!

結局、以下のように画像を使うことを静的にわかるように(?)してやると、無事に埋め込まれました。

[Embed(source="assets/menu01.jpg")] [Bindable] private var menu01 : Class;
[Embed(source="assets/menu02.jpg")] [Bindable] private var menu02 : Class;
[Embed(source="assets/menu03.jpg")] [Bindable] private var menu03 : Class;
[Embed(source="assets/menu04.jpg")] [Bindable] private var menu04 : Class;
[Embed(source="assets/menu05.jpg")] [Bindable] private var menu05 : Class;
[Embed(source="assets/menu06.jpg")] [Bindable] private var menu06 : Class;
[Embed(source="assets/menu07.jpg")] [Bindable] private var menu07 : Class;
private var imgArray : Array = [menu01, menu02, menu03, menu04, menu05, menu06, menu07];
private function selectImg(idx : int) : Class {
  return imgArray[idx];
}
<!-- メニューボタンを縦に並べる(画像が埋め込まれる) -->
<mx:Repeater id="menuRepeater" dataProvider="{menuItemArray}">
  <mx:Canvas backgroundImage="{selectImg(menuRepeater.currentIndex)}">
    <mx:VBox width="100" height="100" click="(略)">
      <mx:Text htmlText="{menuRepeater.currentItem.title}"/>
    </mx:VBox>
  </mx:Canvas>
</mx:Repeater>

バロス!俺はなんか根本的な勘違いをしてるのか!?