Flash の JSFL から xmlui ターゲットリストの選択にアクセスするにはどうすればよいですか?
質問
単純な 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);
ちょうどうまくいきます。
所属していません StackOverflow