0

私はデスクトップ アプリケーションを作成しており、アプリケーションを使用するさまざまな方法を模索しています。

Air アプリを作成することを選択すると、自動的にWindowApplicationが使用されますが、アプリケーションに複数のウィンドウが必要な場合は、代わりにApplicationを使用する必要があります。Application内にWindowApplicationをネストしようとしていたので、( Application -> new Window()によって)複数のウィンドウを作成し、バックグラウンドでクロムレスの透明なプログラムを使用できます。WindowApplicationをネストすると機能しますが、 (デバッグの実行後に) WindowApplicationをクリックすると、「引数エラー: エラー #2025: 指定された DisplayObject は呼び出し元の子である必要があります」というエラーがスローされます。

これが私が使用したコードです。Flash Builder 4 で Air 2.5 を使用しています (xml ファイルがデフォルトです)。

<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" 
                       xmlns:s="library://ns.adobe.com/flex/spark" 
                       xmlns:mx="library://ns.adobe.com/flex/mx"
                       applicationComplete="main()">
    <fx:Declarations>
        <!-- Place non-visual elements (e.g., services, value objects) here -->
    </fx:Declarations>
    <fx:Script>
        <![CDATA[
            import spark.components.Label;
            import spark.components.Window;

            private var windows:Array = new Array();

            private function main():void
            {

                var window:Window;
                var numOfWindows:Number = 2;
                for(var i:Number=0; i<numOfWindows;i++)
                {
                    window = new Window();
                    window.width = 300;                 
                    window.title = "I am Window #"+i;
                    window.height = 200;
                    window.open(true);
                    window.showStatusBar = false;   
                    windows.push(window);
                }
                trace("Complete!");
            }
        ]]>
    </fx:Script>
    <s:WindowedApplication >
    <!-- Compiles, but once I click this, it throws the error. -->
    </s:WindowedApplication>
</s:Application>

いくつかのウィンドウを制御できる (または少なくとも上記のエラーを取り除く) 透過的なアプリケーションを作成するにはどうすればよいでしょうか? 前もって感謝します。

4

1 に答える 1

0

WindowedApplicationは、子要素として使用するためのものではなく、最上位の要素です。ルート要素としてApplicationまたはWindowedApplicationを使用する必要があり、それらを相互にネストしようとしないでください。公用語リファレンスの詳細情報:http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/mx/core/WindowedApplication.html

于 2011-04-05T02:53:23.493 に答える