2011-04-15 44 views
1

我試圖編寫as3中的下拉控件,其中單擊控件的「頂級文本」(Sprite)會導致出現一個框(另一個Sprite)。該框包含可能選擇的所有項目的列表。當選擇'item1'時,該框關閉,item1-文本成爲控件的頂部文本。等等。FocusEvent.FOCUS_OUT事件的relatedObject始終爲空

我還希望當控件失去焦點時,即當用戶點擊flash電影中的其他任何地方時,該框會自動關閉。爲此,我在FocusEvent.FOCUS_OUT的框上添加了一個事件偵聽器。

事情是,我想根據FocusEvent的relatedObject發生不同的處理。更確切地說,我想要做的不僅僅是在relatedObject是下拉控件本身的子節點的特定情況下關閉。如果不是,請關閉它。

我的問題是,relatedObject屬性是總是即使是null,無論重點關注什麼。此外,isRelatedObjectInaccessible屬性始終爲false,因此(根據文檔),它不是安全相關的問題。

任何想法?

回答

0

原來,這種行爲是由Doomsday Console引起的,它是作爲我正在研究的項目的一部分添加到舞臺上的。刪除它解決了這個問題。

0

嘗試使用FOCUS_OUT的flash.events.MouseEvent.MOUSE_DOWN intead。在控制下的夾子上處理它。

+0

確實,我總是可以通過在舞臺上添加一個MOUSE_DOWN監聽器來追蹤控件的「外部」點擊。它不會跟蹤鍵盤導航,例如Tab鍵。 – biril 2011-04-15 17:01:46