2009-04-25 27 views
0

我在Flash CS4中创建了一个包含文本的图形。我嵌入适当的字符,然后将其作为MovieClip保存到我的库中。然后我将它导出到一个SWC文件。Flash AS3 - 如何将导入的textfield movieclip设置为不可选

在我的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 

回答

3

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

1

如果您将设置文本的影片剪辑设置为不启用鼠标,则需要为它设置两个propetries,mouseEnabled和mouseChildren。 mouseEnabled表示该特定的影片剪辑无法获取鼠标事件,但不会影响影片剪辑的子项(例如其中的文本字段)。 mouseChildren表示它的孩子不注册鼠标事件,他们只是从父母派发。要完全禁用它,两者都必须是假的。


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

由于文本框是电影剪辑的孩子,mouseChildren属性是正在发生的事情影响到它,你可以只设置为false,它仍然能工作。

+0

我已添加MouseEnabled = false; MouseChildren = FALSE;到我的按钮和“我”编辑光标仍然出现,我仍然可以突出显示文字。 :( – 2009-04-25 20:20:16

+1

这是因为它是mouseEnabled和mouseChildren(区分大小写)。它将完全禁用剪辑和所有的孩子。你所做的只是在影片剪辑上创建2个没有实际效果的新属性。 – 2009-04-26 00:15:34