0

我在 Flash CS4 中创建了一个包含文本的图形。我嵌入了适当的字符,然后将其作为 MovieClip 保存到我的库中。然后我将它导出到一个 SWC 文件。

在我的 AS3 代码中(使用 Flex SDK/记事本),然后我导入影片剪辑并为其分配一些鼠标事件,以便我可以将其用作按钮。

不幸的是,我以这种方式导入的所有图形中的文本都有“I”鼠标光标,并且文本是可选择的。这从我的 Flash 应用程序中窃取了焦点并且不好!

我知道当我有一个文本字段时,我可以:

var myButton:TextField = new TextField();
myButton.MouseEnabled = false;

但是,当它是我正在导入的 Movieclip 时,这不起作用:

var myButton:MovieClip = new MyImportedButtonGraphic();
myButton.MouseEnabled = false;  // No effect

// Plus some other things I learned:
myButton.selectable = false;    // also no effect
myButton.MouseChildren = false; // No effect

我究竟做错了什么?

4

2 回答 2

3

在 flash ide 中,选择 textField,转到属性面板并取消选中包含字符“Ab”的按钮。这会阻止您的文本可供选择。

于 2009-04-25T20:53:25.610 回答
1

如果要将包含文本的影片剪辑设置为不启用鼠标,则需要为其设置两个属性:mouseEnabled 和 mouseChildren。mouseEnabled 意味着该特定影片剪辑无法获得鼠标事件,但不会影响影片剪辑的子项(例如其中的文本字段)。mouseChildren 意味着它的孩子不注册鼠标事件,他们只是从父母那里分派。要完全禁用它,两者都需要为假。


var myButton:MovieClip = new MyImportedButtonGraphic();
myButton.mouseEnabled = false;
myButton.mouseChildren = false;

由于文本字段是影片剪辑的子项,因此 mouseChildren 属性会影响它,您可以将其设置为 false 并且它仍然可以工作。

于 2009-04-25T19:47:40.823 回答