我刚刚完成了一个游戏小程序。现在我想创建一个具有背景图像的开始屏幕和一个开始游戏按钮。当用户点击开始按钮时,我想清除开始游戏屏幕,我希望将游戏背景和所有其他游戏组件绘制到屏幕上。此外,我希望开始游戏按钮是可点击的图像。我的问题是如何在paint()方法中绘制一个屏幕而不是两个屏幕。
我该怎么做?提前致谢。
答案 0 :(得分:3)
我明白了......
JPanel
充当启动画面的主要容器JLabel
JButton
,供用户点击。我还看到一个CardLayout
,可以让您更轻松地在SplashScreen
和Game
屏幕之间切换。
查看How to use CardLayout了解详情。
根据您的描述,听起来您已经开始重写paint
类的JApplet
。欢迎来到“为什么你不应该覆盖顶级容器的paint
的精彩世界”
您需要将所有自定义绘制和控制逻辑移动到不同的组件(类似于JPanel
会这样做)并使用它的paintComponent
方法。这样,您就可以控制面板的位置(可以制作成独立的应用程序)并为可交换的屏幕/窗格提供支持