0

Flex アプリケーション内で使用したいクラスを定義する actionscript ファイルがあります。

actionscript ファイルでいくつかのカスタム コントロールを定義し、application タグを介してインポートします。


<mx:Application
    xmlns:mx="http://www.adobe.com/2006/mxml"
    xmlns:scorecard="com.apterasoftware.scorecard.controls.*"
...
</mx:Application>

しかし、このコードはフレックス コンポーネントではなく、数学ルーチンを実行するためのライブラリです。このクラスをインポートするにはどうすればよいですか?

4

2 に答える 2

5

script タグ内にクラスをインポートする必要があります。

<mx:Application
  xmlns:mx="http://www.adobe.com/2006/mxml">
  <mx:Script>
    import com.apterasoftware.scorecard.controls.*;
    // Other imports go here

    // Functions and other code go here
  </mx:Script>

  <!-- Components and other MXML stuff go here -->
  <mx:VBox>
    <!-- Just a sample -->
  </mx:VBox>
</mx:Application>

その後、スクリプト タグ内の他の場所でそのクラスを参照できるようになります。クラスの記述方法によっては、MXML 内でバインディングを使用できない場合がありますが、それを処理する独自のコードを定義することはできます。

名前空間宣言は、他の MXML コンポーネントをインポートするためにのみ使用されます。AS クラスは、スクリプト ブロックまたは別の AS ファイル内で import ステートメントを使用してインポートされます。

于 2008-09-02T15:56:51.993 に答える
0

@Herms: 少し明確にするために、名前空間宣言を使用して、MXML を使用して AS クラスをインスタンス化するときに、AS クラスを「インポート」することもできます。

たとえば、完全に AS で記述したカスタム ビジュアル コンポーネントがあるとしますcom.apterasoftware.scorecard.controls.MathVisualizer。MXML 内で使用するには:

<mx:Application
    xmlns:mx="http://www.adobe.com/2006/mxml"
    xmlns:aptera="com.apterasoftware.scorecard.controls.*">

    <aptera:MathVisualizer width="400" height="300" />
</mx:Application>
于 2008-12-30T15:26:47.043 に答える