Java 画布和输入地图

Java 画布和输入地图,java,canvas,jpanel,awt,keylistener,Java,Canvas,Jpanel,Awt,Keylistener,我正在用Java构建一个2d游戏,我决定使用画布来显示与当前帧相关的图像。我使用Canvas是因为我听说它在时间上比JPanel更有效。这是真的吗 另外,我想通过键绑定向游戏中添加一些输入,因为键侦听器可能会引起焦点问题,并且是较低级别的构造:(参见答案)。 有没有一种方法可以在画布上使用键绑定?或者我会简单地使用KeyListener。 您不能向awt.Canvas添加键绑定,API中没有实现方法 您可以只添加KeyListener 更改您的决定并使用JPanel/JComponent 感谢您

我正在用Java构建一个2d游戏,我决定使用画布来显示与当前帧相关的图像。我使用Canvas是因为我听说它在时间上比JPanel更有效。这是真的吗

另外,我想通过键绑定向游戏中添加一些输入,因为键侦听器可能会引起焦点问题,并且是较低级别的构造:(参见答案)。 有没有一种方法可以在画布上使用键绑定?或者我会简单地使用KeyListener。

  • 您不能向awt.Canvas添加键绑定,API中没有实现方法

  • 您可以只添加KeyListener

  • 更改您的决定并使用JPanel/JComponent


感谢您的快速响应!就时间而言,JPanel是否和Canvas一样高效(我知道JPanel是轻量级组件,而Canvas不是,所以我不想问内存问题),在有(J)个组件或Java2D的情况下,我看不出有什么不同,