2

vkontakte の新しいラッパー機能を使用したいと考えています。これは、SWF ラッパーの下で実行することによってアプリケーションの機能を強化します。

これは、このメカニズムを使用するサンプル アプリケーションです。ではなく、純粋なアクション スクリプトを使用して内容を表示しますmx:Application

次のエラーが原因で、ラッパーの使用にmx:Application失敗しました:

TypeError: Error #1009: Cannot access a property or method of a null object reference.
 at mx.managers::FocusManager/activate()[C:\autobuild\galaga\frameworks\projects\framework\src\mx\managers\FocusManager.as:702]
 at mx.managers::SystemManager/activateForm()[C:\autobuild\galaga\frameworks\projects\framework\src\mx\managers\SystemManager.as:2493]
 at mx.managers::SystemManager/activate()[C:\autobuild\galaga\frameworks\projects\framework\src\mx\managers\SystemManager.as:2451]
 at mx.core::Application/initManagers()[C:\autobuild\galaga\frameworks\projects\framework\src\mx\core\Application.as:1152]
 at mx.core::Application/initialize()[C:\autobuild\galaga\frameworks\projects\framework\src\mx\core\Application.as:834]
 at DummyApp/initialize()[C:\Users\Eran.HOME\Documents\Web Projects\MaxiMarketing\TestMarketing\src\DummyApp.mxml:0]
 at mx.managers::SystemManager/http://www.adobe.com/2006/flex/mx/internal::childAdded()[C:\autobuild\galaga\frameworks\projects\framework\src\mx\managers\SystemManager.as:2127]
 at mx.managers::SystemManager/initializeTopLevelWindow()[C:\autobuild\galaga\frameworks\projects\framework\src\mx\managers\SystemManager.as:3396]
 at mx.managers::SystemManager/http://www.adobe.com/2006/flex/mx/internal::docFrameHandler()[C:\autobuild\galaga\frameworks\projects\framework\src\mx\managers\SystemManager.as:3219]
 at mx.managers::SystemManager/docFrameListener()[C:\autobuild\galaga\frameworks\projects\framework\src\mx\managers\SystemManager.as:3065]

したがって、アプリケーションを起動できるラッパーへのラッパーを作成できると考え、これを思いつきました (DummyAppランチしたいアプリケーションです)。

package 
{
 import Components.SidePanel;

 import flash.display.Sprite;
 import flash.events.Event;

   public class AppWrapper extends Sprite 
   {    
     public function AppWrapper() {
      this.addEventListener(Event.ADDED_TO_STAGE, onAddedToStage);
     }

     public function onAddedToStage(e: Event): void {
      var mainApp:DummyApp = new DummyApp();

      this.removeEventListener(Event.ADDED_TO_STAGE, onAddedToStage); 
     }
   }
}

残念ながら、それも失敗しました。単純な AS ファイルからアプリケーションを起動するにはどうすればよいのかという疑問が残ります。

4

2 に答える 2

1

純粋なActionScriptプロジェクトまたはFlexアプリケーションプロジェクトを作成しようとしていますか(前者はFlex Frameworkを使用していませんが、後者は使用しています)?Flexフレームワークを使用するには、少なくともアプリケーションのmxmlファイルが必要です。Flexで「Actionscriptプロジェクト」を作成する場合、メインアプリケーションファイル(.as)は「ドキュメントクラス」またはラッパーになります。Actionscriptアプリケーションラッパーの使用に関する関連記事は次のとおりです。

MXMLを使用せずにFlexFramework/ Componentsを使用することは可能ですか?

ただし、ここでは、actionscriptクラスを「初期化」するために少しのmxmlを使用する必要があることがわかります。

于 2009-10-27T14:19:42.207 に答える
0

Vkontakte のラッパーは Flex をサポートするようになったため、この質問は廃止されました。

于 2009-11-28T14:49:04.110 に答える