一個對象獲取焦點,可理解為被選中。
FocusEvent的類型只有4種:
FocusEvent.FOCUS_IN: 存儲字符串“focusIn”指定獲得焦點的事件類型
EocusEvent.FOCUS_OUT:存儲字符串“focusOut”指定失去焦點的事件類型
FocusEvent.KEY_FOCUS_CHANGE:存儲字符串“keyFocusChange”指定通過按鈕改變焦點的事件類型
FocusEvent.MOUSE_FOCUS_CHANGE:存儲字符串“mouseFocusChange”指定通過鼠標改變焦點的事件類型
焦點實例
mc1.tabIndex = 1;
mc2.tabIndex = 2;
mc3.tabIndex = 3;
var tf:TextField = new TextField();
tf.autoSize = 'left';
tf.x = tf.y = 10;
var format:TextFormat = new TextFormat();
format.size = 14;
tf.defaultTextFormat = format;
addChild(tf);
stage.addEventListener(FocusEvent.FOCUS_IN,showTarget);
function showTarget(e:FocusEvent):void{
tf.text = "現在焦點是"+e.target.name;
}
來自:http://hi.baidu.com/as3%C8%EB%C3%C5%BE%AB%CD%A8/blog/item/dba3c3b7d305f746092302cf.html
Q:點擊一個MovieClip,結果該MovieClip不會獲得焦點,而且還會導致stage.focus屬性變為null 會影響鍵盤偵聽
點擊文本框則是好的 這是為什么,如何解決呢?
A:這個問題容易搞定. 鍵盤模塊監聽舞台的 focus in 事件每次 focus in 新的焦點后,則監聽新焦點的 remove_from_stage 事件發現新焦點對象 remove , 重置 stage.focus = stage 即可