【发布时间】:2012-03-15 08:21:12
【问题描述】:
我正在将 2D 游戏从 Applet 转换为 JFrame。我知道我应该将 JPanel 添加到 JFrame 并使用 JPanel 作为我的绘图表面,但我不确定我应该将什么子类化。我正在使用 JFrame 进行尝试,但我读到扩展 JFrame 通常是不必要的,也是一个坏主意(无论如何我没有添加任何额外的功能,所以这是有道理的)。我需要覆盖 JPanel 的 paintComponent() 方法,所以现在我倾向于扩展 JPanel。有没有更好的方法来创建 2D 游戏界面,或者扩展 JPanel 并将其添加到 JFrame 是一种合适的方法?
【问题讨论】:
-
你是对的——使用 JPanel 或 JComponent 并覆盖paintComponent。查看将背景绘制到 BufferedImage 中,您将在调用 super 方法后立即在 paintComponent 方法中绘制它。 Sprite 可能会直接在 BufferedImage 上方的 paintComponent 方法中绘制。也为@Snicolas 的出色录音加分。
标签: java swing user-interface