Как я могу получить значения из Flash Authoring в JSFL через XMLUI? - PullRequest
2 голосов
/ 31 августа 2010

Я хочу установить переменную из файла флэш-памяти, чтобы получить доступ к ней из команды JSFL.

Я использую элемент в XMLUI JSFL: Вот JSFL:

fl.getDocumentDOM().xmlPanel(fl.configURI + 'Commands/ATest.xml');
fl.trace(fl.xmlui.get('secretword'));//this traces undefined

XMLUI:

<dialog buttons="accept,cancel">
  <textbox id="display_tb" size="24" />
  <flash id="trace_fl" width ="150" height="100" src="ATest.swf">
    <property id="secretword" />
  </flash>
  <button id="trace_btn" label="trace Flash" oncommand="fl.xmlui.set('display_tb','the secret word is ' + fl.xmlui.get('secretword'));" />
</dialog>

ActionScript внутри ATest.swf:

MMExecute("fl.trace('Hello From Flash XMLUI');");
XMLUI.setProperty('secretword','duck');

Примечание , что если я использую

MMExecute("fl.xml.ui.set('secretword','duck')");

вместо

XMLUI.setProperty('secretword','duck');

Я получаю ошибку.

Секретное слово правильно установлено в XMLUI:

  • Я могу использовать fl.xmlui.get ('secretword') и установить значение в текстовом поле 'display_tb'
  • Я могу напечатать значение из actionscript (с помощью fl.trace ())

но я не определился, когда я использую трассировку fl.xmlui.get ('secretword') в JSFL после открытия панели.

В некотором смысле это имеет смысл, если переменные xmlui живут до тех пор, пока отображается диалоговое окно xmlui, и становятся неопределенными, как только пользователь нажимает accept или cancel . Кто-то может подтвердить, что это так?

Aworkaround будет сохранять «секретное слово» в текстовом файле через JSFL из xmlui, хотя просто передать значения из узла xmlui в JSFL будет проще. Есть ли «чистый» способ сделать это, кроме записи файла на диск?

1 Ответ

1 голос
/ 01 сентября 2010

В некотором смысле это имеет смысл, если переменные xmlui живут до тех пор, пока отображается диалоговое окно xmlui, и они становятся неопределенными, как только пользователь нажимает кнопку "Принять" или "Отменить".Кто-нибудь может подтвердить, что это так?

Да, я тоже так думаю.

Aworkaround будет сохранять 'secretword' в текстовом файле через JSFL из xmlui, хотя просто передать значения из узла xmlui в JSFL было бы проще.Есть ли более «чистый» способ сделать это, кроме записи файла на диск?

Почему бы не применить это секретное слово к корневому элементу вашего XMLUI?

...