我有一個註冊偵聽來自用戶的鍵盤事件的自定義組件TitleWindow
調試對焦和事件傳播(使ESC關閉該窗口中,輸入保存等)。然而,在我的測試中,我發現了一些情況,我的鍵盤事件處理程序不會觸發。Flex中
我最好的猜測,爲什麼發生這種情況是有一些子組件的地方,偷了焦點並從傳播停止鍵盤事件。不幸的是,由於我的TitleWindow
中有大量的組件,因此我無法很好地知道是誰偷了焦點。
我的問題然後,有什麼好的技巧/技術/在Flex中調試焦點問題,事件傳播工具?基本上,我需要一些能夠告訴我在任何特定時間誰關注誰以及誰在任何特定時間處理事件的情況......這是可能的嗎?
感謝,Tegeril,通過使用FocusManager,然後我就能夠發現誰偷的焦點,並消耗鍵盤事件,問題解決了!我會提到有關事件處理解決方案的一件事是,因爲我的處理程序沒有被調用,所以我沒有地方斷點並檢查e.target和e.currentTarget。當您控制派發事件的項目和處理事件的項目時,這是非常棘手的情況! – Dan
啊,關於這個事件非常好。我想不出一種方法來捕捉非冒泡事件,如果他們發射你沒有聽到的物體,也許有人可以提供一些輸入和啓發我們兩個:) – Aaron