Flash の JSFL から xmlui ターゲットリストの選択にアクセスするにはどうすればよいですか?

StackOverflow https://stackoverflow.com/questions/1498200

  •  19-09-2019
  •  | 
  •  

質問

単純な XML UI があります。

<dialog title="Select Symbol" buttons="accept, cancel">
    <vbox>
        <targetlist id="target_symbol" height="300" width="400" required="true" class="movie clip" />
    </vbox>
</dialog>

ユーザーが同意を押した後の結果を取得するにはどうすればよいですか?

次のような基本的なものがあります:

var doc = fl.getDocumentDOM();
var symbolDialog = doc.xmlPanel(fl.configURI + 'Javascript/GetSymbolDialog.xml');
    if(symbolDialog.dismiss == 'accept')
    fl.trace(symbolDialog.target_symbol);

そして、私が得るものはすべて未定義です。

symbolDialog.target_symbol.value が存在しません。

XMLUI に関する章を調べました。 Flash MX 2004の拡張 本に記載されていますが、targetlist の下にリストされているすべてのプロパティは次のとおりです。ID、高さ、幅、クラスは必須です。

ターゲットリストから選択内容を取得するにはどうすればよいですか?

役に立ちましたか?

解決

2010 年の遠い未来から 2004 年にタイムスリップしてこれで遊びたい人のために、答えは次のとおりです。 トッド・ヤード, の著者の一人です。 Flash MX 2004の拡張 :

TargetListと同じIDであるプロパティを定義する必要があるように見えます。Xmlui.get(PropertyName)を介してアクセスできます。

したがって、修正された XML コードは次のようになります。

<dialog title="Select Symbol" buttons="accept, cancel">
    <properties>
        <property id="target_symbol" default="_parent" />
    </properties>
    <vbox>
        <targetlist id="target_symbol" height="300" width="400" required="true" class="movie clip" />
    </vbox>
</dialog>

以上です。

fl.trace(symbolDialog.target_symbol);

ちょうどうまくいきます。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top