2013-04-10 151 views
0

我正在爲我們的遊戲重構很多代碼,以使對象耦合儘可能不具有可能性(以便於測試和未來實現)。目前,我的JFrame偵聽密鑰,將其發送給事件管理器類,該類再次需要對每個對keyinput執行操作的對象進行引用,並調用這些對象的方法。將KeyListener添加到自定義對象

這似乎是一個好主意,而不是在對象內響應keyevents的責任,這將例如允許我更改當前屏幕並使新屏幕的行爲不同,而不檢查不同的全局狀態(如切換到一個遊戲菜單)。

但我不知道如何實現我的自定義對象的keylistener,它似乎必須是一個swing/awt組件。如何將KeyListener添加到自定義對象?我知道如何創建自定義事件和自定義偵聽器,但不知道如何通過這些方法捕獲鍵盤輸入。

回答

1
  • 這是原因爲什麼執行鍵綁定

    1. 最scallable抽象(有或沒有狩獵專注於具體JComponents)

    2. 輸出可以擺動動作的(相同的抽象,可管理,scallable)

    3. Swing中的最佳的繪畫方式

    4. 搖擺使用鍵綁定內部commnads和short_cuts

  • 另一方法是使用AWTEventListener(鼠標&鍵盤事件),

    1. ,但我會用爲compicated key_shortcuts

    2. 超過三個關鍵都在同一時間

    3. detect sequence of chars

    4. 機通過使用OpenGL/CL

    5. 在AWT paitning KeyBindings,KeyListener或API中實現的通知器不正確的特殊情況聽衆

  • 我的類似問題how to add any Listener to Icon

相關問題