【发布时间】:2012-06-23 03:49:33
【问题描述】:
我在 Java 方面经验丰富,并且在 Swing(表单类型应用程序)方面做了一些工作,但我从来不需要比这更强大的功能,所以我不太了解 GUI 引擎盖下发生的事情 -明智的。这是我从我一直在做的一点点阅读中收集到的。我确定它已经关闭了。
在编写太空侵略者类型的游戏时,我想到的两种方法是:
- 为所有增量绘画和分层创建一个大组件和代码。
- 在包含文本和图像的 JLayeredPane 中创建一组嵌套绝对定位的 JPanel,然后仅对可能需要重绘的 JPanel 调用 repaint()。然后覆盖paintComponent()(不确定是否自动清除以前的内容)。根据我的阅读,这将处理组件的分层和重绘,而无需重绘整个屏幕。
这是正确的吗?如果是,哪种方法更适合该项目?
【问题讨论】:
-
@Charles 谢谢!对于那个很抱歉。我真的很重视我在这里得到的帮助。我要勤奋地说出来!
-
我建议完全远离 Swing,正如您正确指出的那样 - 它是用于 GUI,而不是游戏。对可用的游戏特定 Java 库进行一些研究。
标签: java swing user-interface