2013-04-10 195 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