2012-09-17 50 views
0

我正在使用Flash Professional CS6。它允許添加Flex SDK的SWC文件。我想要做的是將mx.controls.Button添加到舞臺。代碼運行良好,但該按鈕不會出現在舞臺上。難道我做錯什麼在此代碼:將mx.controls.Button添加到Flash Professional CS6文檔

//f9 to open action editor 
//in scene 1: 
import mx.controls.Button; 

var b:Button = new Button(); 
b.label = "My button"; 
b.width = 100; 
b.height = 30; 
b.visible = true; 

stage.addChild(b); 
+1

嘗試導入'fl.controls.Button'。 – Moorthy

+0

閃存ide說沒有這樣的包'fl.controls',也沒有'flash.controls' – jondinham

+1

轉到窗口 - >組件。出現組件對話框。點擊並拖動'User Interface'下的'Button'到你的庫中 – Moorthy

回答

1

[mx.controls]package包含控件中的Flex/FlashBuilder使用。 fl.controlspackage包含用於Flash IDE的類似但不一定等效的控件。如果你只是想使用按鈕,你應該做@Moorthy所說的,並從組件庫中拖動按鈕,然後參考fl.controls.Button

如果你非得在Flash中使用Flex組件,它是可能的,你可以做這樣的:

  1. 負載Flex的SWF到您的Flash
  2. 等到加載Flex組件到達幀2(所有Flex swf的確有2幀)
  3. 在加載對象的應用程序屬性中添加eventlistener(用於flex中定義的事件)。該屬性實際上是SystemManager類的 屬性。記住在Flash中不存在SystemManager類 。這是一個Flex的事情。

值得一說,這是有道理的,先進的Flex組件,在那裏你不想重新編碼了很多複雜的行爲,但很難想象爲什麼您需要mx.controls.Buttton而不是fl.controls.Button或您自己的MovieClip,因爲這種行爲實際上非常普遍和直接。

+0

我需要使用mx控件,因爲我有一堆用flex編碼的類,現在我需要將它們用於閃光項目:) – jondinham

+0

是的,這是有道理的。我認爲上面鏈接的博客文章應該涵蓋這一點。 – JcFx

相關問題