我知道MovieClip上的buttonMode属性(在悬停时获取手形光标),我希望用TextField做同样的事情,但它似乎没有实现这个属性。有没有人知道是否有类似的东西,或者失败了,另一种控制文本字段光标的方法?
@James:我正在扩展MovieClip类,然后在代码中从cllass(包括文本字段)中创建对象,这会使事情变得复杂(如果仅在我脆弱的大脑中)。奇怪的是我在MC上设置了buttonMode = true,它适用于除TextField之外的所有内容,当它恢复为插入符号时(如果我在TextField上设置Selectable = false,则仅适用于指针)。
@ForYourOwnGood:关于可用性的观点,但我希望textfield是更大对象的无缝部分,没有手形光标就感觉不对。你提供的东西听起来就像我需要的东西,但它看起来像Flex特定的?尽管在LiveDocs中进行了拖网,但我找不到Flash中的等效物(特别是CS4)。我昏暗吗? :S
答案 0 :(得分:9)
尝试添加
mouseChildren = false; (在扩展MovieClip的类中)
它应该阻止文本字段被鼠标启用。
答案 1 :(得分:4)
或者,您可以将文本字段放在movieclip中,并将buttonmode设置为true。这基本上是按钮组件中的凸起如何工作,并且是这个特定问题的可接受的解决方案。
答案 2 :(得分:2)
您无法使用TextField设置手形光标,就像使用MovieClip一样。这是有道理的,如果你考虑一下,Textfield上的手形光标不是用户友好的,用户希望将文本输入到TextField中,而不是像Button一样点击它。但是你可以使用它。
为TextField提供鼠标悬停事件的事件监听器,然后在事件处理程序中将光标设置为CursorManager。
应该看起来像......
myTextField.addEventLstener(MouseEvent.MOUSE_OVER, onMouseOver);
private function onMouseOver( event : MouseEvent ) : void{
CursorManager.setCursor(cursorClass, priority, xOffset, yOffset);
}
答案 3 :(得分:2)
没有_sprite.buttonMode = true
操纵,
你必须写:
_textField.htmlText = "<a href='event:null'>"+yourText+"</a>";
答案 4 :(得分:1)
上述任何一项都不是必需的,请尝试将TextField的mouseEnabled属性设置为false,如下所示:
textField.mouseEnabled = false;
这将禁用TextField上的任何鼠标交互,这会阻止Flash观看选择。
答案 5 :(得分:0)
我会非常原始地将alpha = 0 movieClip放在按钮的textfield / label上,这也会带来handCursor