簡體   English   中英

如何通過XMLUI從JSFL中的Flash創作中獲取值?

[英]How can I get values from Flash Authoring in JSFL via XMLUI?

我想從Flash文件中設置一個變量,以便從Command中的JSFL訪問。

我在JSFL的XMLUI中使用元素:這是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>

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())

但是當我打開面板后在JSFL中使用trace fl.xmlui.get('secretword')時,我無法定義。

從某種意義上講,如果xmlui變量只要在顯示xmlui對話框時就一直存在,並且一旦用戶單擊acceptcancel ,它們就變得未定義。 有人可以確認是這種情況嗎?

解決方法是通過xmlui通過JSFL將'secretword'保存在文本文件中,盡管僅將值從xmlui節點傳遞到JSFL會更簡單。 除了將文件寫入磁盤以外,是否有一種“更清潔”的方法?

從某種意義上講,如果xmlui變量在xmlui對話框顯示的時間內一直存在,並且一旦用戶單擊接受或取消,它們就變得未定義。 有人可以確認是這種情況嗎?

是的,我也這么認為。

解決方法是通過xmlui通過JSFL將'secretword'保存在文本文件中,盡管僅將值從xmlui節點傳遞到JSFL會更簡單。 除了將文件寫入磁盤以外,是否有一種“更清潔”的方法?

為什么不將此密碼應用於XMLUI的根元素?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM