1

フレックスでボタンのアイコンを設定したい。

デフォルトの構文は次のとおりです。

myButton.setStyle("icon", iconClass);

iconClass は通常、埋め込みオブジェクトです。

しかし、私がやりたいのは、標準のスプライトまたはムービークリップ(実行時に見つけたもの) をアイコンとして使用することです。

これは可能ですか?誰かがこれをしましたか?

ありがとう!

4

2 に答える 2

2

これは実際には、スタイリングに関するFlexのフレームワークの致命的な欠陥です。Flexがアイコンのスタイル値を取得すると、そのアイコンはタイプClassであり、インスタンス化されたオブジェクトはタイプDisplayObject(または派生)であると見なされます。mx:Imageスタイルの値が型であるかどうかをテストするためのコード(クラスはソースプロパティに対して行うような)への些細な変更でDisplayObjectあり、そうである場合は、現在実行している構築ステップをスキップします。

Flexフレームワークのソースを変更したくない場合は、Benのソリューションが最適です。個人的には、特定のコンポーネントにモンキーパッチを適用して、一部のコンポーネントDisplayObjectsの代わりにインスタンス化を受け入れるようにします。Classes.一部のコンポーネントは、他のコンポーネントよりもパッチを適用するのが面倒です。

Flexフレームワークにモンキーパッチを適用する方法を説明するDougMcCune。

于 2009-04-10T16:02:32.987 に答える
-1

可能な解決策を見つけました。http://blog.benstucki.net/?p=42この前にあげて報告します。

于 2009-03-15T16:01:35.167 に答える