2011-02-03 60 views
0

我試圖使用編譯資產和SWC代碼。 在新的fla內,我選擇導出時要包含的swc。 在代碼的時間軸中創建實例時,我可以看到位於swc中的資產並從同一個對象跟蹤屬性。 問題是,只有在動畫片段內做同樣的事情時,才能到達資產(movieclip),但我仍然可以跟蹤該類的屬性。SWC內的動畫片段實例類

我已經上傳了工作文件: master.fla是創建swc的。 template.fla是我測試swc的地方。

files(這是CS4的.fla + +名爲.swc。如)

編輯: 如何重現問題我有:

0.1創建一個新的master.fla並使它編譯一個swc。

.2在master.fla時間軸中創建一個Textfield,給它一個實例名稱「tfield」並從中創建一個MovieClip。

.3創建一個TextBox.as類並定義一個公共變量「tfield」(這將拾取您的電影中的TextField資源)。

.4在庫中,將新創建的MovieClip鏈接到TextBox類。

.5導出,你應該看到一個TextBox類的實例。使用

的SWC:

0.1創建一個新的FLA,並使其使用master.swc源

0.2開放第一幀的時間表,寫了下面的代碼:

var tf : TextBox = new TextBox(); 
addChild(tf) 

這應該按預期工作,創建一個TextBox的實例,你應該看到裏面的TextField。

.3註釋前面的代碼並寫入相同的代碼,但是這次在MovieClip中並將其放到時間軸中。雖然代碼有效,但「tfield」無法訪問。你也看不到它。

SOLUTION:正如Daniel指出的那樣,只要給包含代碼的MovieClip提供一個鏈接id(不要給TextBox類id,只是讓它創建一個新的類,如「lalala」)。

謝謝丹尼爾!

回答

1

模板添加一個鏈接ID到TF

0

fixed
添加TextField初始化TextBox.as(以避免空引用跟蹤tfield.text時),並更名爲tf: TextBoxtb:TextBox在舞臺上做出名稱不同tf

+0

嗨www0z0k,感謝您的時間,我想我無法解釋清楚自己。實例化從swc獲取的TextBox對象時,問題不在模板中。我可以跟蹤關鍵變量,所以類正在執行。問題在於tfield TextField在我從主時間軸中的movieCLip()中實例化時沒有出現,它很好地工作。這是潛水我的頭=) – 2011-02-04 01:01:07

+0

@圓頂 - 我可以請你更新文件?我在舞臺 – www0z0k 2011-02-04 03:22:55

相關問題