【发布时间】:2014-08-30 04:55:58
【问题描述】:
我正在处理的程序包括一个名为GameForm 的类,它扩展了JFrame。此表单将包含一张地图(只是一系列矩形)以及地图上的某些对象。
但是,我无法使用单个 paintComponent(Graphics g) 函数绘制所有这些对象,因为并非游戏中的所有对象都必须始终同时绘制。例如,drawMap() 函数只会在表单第一次加载时调用,而所有其他绘图函数将在每次转动后调用。
但是,根据我的阅读(如果我错了,请纠正我),类中只允许一个paintComponent函数,其他函数不能使用它的Graphics2D对象。
对于如何实现这一点有什么想法吗?
【问题讨论】:
-
您可以将
Graphics2D对象传递给其他方法。 -
你可以看看this question,如果你向下滚动,有三种不同的缓冲策略,将核心图形分层绘制到屏幕缓冲区,地图,这是相当静态的,接下来是环境,并在此基础上产生影响。这有点粗略,但你应该明白。
标签: java swing graphics2d