3 回答

TA貢獻1830條經(jīng)驗 獲得超9個贊
什么時候你應(yīng)該更喜歡一個而不是另一個?
因為它們被引入所以更喜歡Key Bindings。A KeyListener
是與事件的較低級別連接。
關(guān)鍵綁定的頁面涵蓋了我傾向于使用它們而不是使用它們的很多原因KeyListener
。它列出了許多簡單地“不可用”的東西KeyListener
。EG選擇:
WHEN_FOCUSED
WHEN_ANCESTOR_OF_FOCUSED_COMPONENT
WHEN_IN_FOCUSED_WINDOW
我閱讀鏈接文檔越多,我就越不能理解提出問題的必要性。例如:
鍵綁定的替代方法是使用鍵偵聽器。鍵偵聽器可以作為鍵盤輸入的低級接口,但是對于單個鍵的響應(yīng),鍵綁定更合適,并且更容易維護代碼。如果在組件沒有焦點時要激活鍵綁定,則鍵偵聽器也很困難。密鑰綁定的一些優(yōu)點是它們有點自我記錄,考慮包含層次結(jié)構(gòu),鼓勵可重用的代碼塊(
Action
對象),并允許輕松刪除,自定義或共享操作。此外,它們可以輕松更改操作綁定的鍵。另一個優(yōu)點Actions
是他們有一個啟用狀態(tài),它提供了一種簡單的方法來禁用該操作,而無需跟蹤它附加到哪個組件。
文字組件
正如@Robin所指出的,文本組件也具有DocumentListener
&DocumentFilter
可以添加到更適合文本文檔的功能。有關(guān)文檔偵聽器和過濾器的更多信息,請參閱文本組件功能。

TA貢獻1808條經(jīng)驗 獲得超4個贊
請問no access to the x,y location
,我的觀點--->為了更好的幫助,基于SSCCE發(fā)布自己的問題,簡短,可運行,可編譯,AFAIK同時存在3個或更多keyPressed(鍵快捷鍵)或?qū)嶋H訂購的限制keyPressed / release for key short cut,for rest is better,comfotable,manbable to KeyBindings over KeyListener
添加回答
舉報