0

我正在使用 Flash Professional CS6。它允许添加 Flex SDK 的 SWC 文件。我想要做的是将 mx.controls.Button 添加到舞台。代码运行良好,但按钮没有出现在舞台上。我在这段代码中做错了吗:

//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);
4

1 回答 1

1

[mx.controls] 包含用于 Flex / FlashBuilder 的控件。该fl.controls 软件包包含用于 Flash IDE 的类似但不一定等效的控件。如果你只想使用一个按钮,你应该按照@Moorthy 所说的做,然后从组件库中拖动按钮,然后引用fl.controls.Button.

如果您绝对必须在 Flash 中使用 Flex 组件,这是可能的,您可以这样做:

  1. 将 Flex swf 加载到闪存中
  2. 等到加载的 Flex 组件到达第 2 帧(所有 Flex swf 确实有 2 帧)
  3. 在加载对象的应用程序属性上添加事件监听器(用于 flex 中定义的事件)。这个属性实际上是 SystemManager 类的一个属性。请记住 Flash 中不存在 SystemManager 类。这是一个灵活的事情。

值得一提的是,这对于高级 Flex 组件是有意义的,您不想在其中重新编码很多复杂的行为,但很难想象为什么您需要mx.controls.Buttton代替fl.controls.Button或您自己的MovieClip,因为这种行为真的很常见并且直截了当。

于 2012-09-17T11:09:07.360 回答