我最近一直在研究以下内容,在点击运行然后经过多个GUI之后,它将加载到运行游戏的Panal上,问题是它没有按照预期做。以下是给我带来麻烦的代码。我已经向我的IT老师寻求帮助,他也不知道怎么了。
create_synthetic_image
答案 0 :(得分:0)
不知道这是否可以解决您的问题,但这是一些问题:
您正在重写Paint(...)
方法。没有这种方法。有一个小写的paint(...)
方法。但是,在使用Swing时,您应该覆盖paintComponent(...)
方法。
绘画方法仅用于绘画,而不用于其他任何处理。您无法控制Swing何时调用paintComponent()方法,因此绘画方法应仅绘画类的当前状态,而不更改状态。所以:
请勿使用while(...)循环进行动画处理。动画会发生得太快,您只会看到最终结果。相反,您应该使用Swing Timer来安排动画。我看到您在代码的其他地方使用了Timer。计时器不要使用1ms。计时器不够精确,会生成太多事件。最小值应为16左右,这将使您每秒获得60帧。