我有一个扩展JPanel的类,它包含一个绘制(Graphics页面)方法来绘制自己..如果我正在构建一个测试驱动程序并希望在框架上显示它应该使用什么...我很困惑在paint(),paintComponent(),getGraphics()等之间。
班级
class Car extends JPanel {
void draw (Graphics page) {
....draw polygons...
}
* 编辑 *
目标是让汽车在屏幕上移动动画,我将绘制方法更改为'paintComponent()'并显示出来!但它需要移动它并用计时器重新绘制它。所以我想一遍又一遍地绘制它是draw()而不是paintComponent()的原因。 ?
答案 0 :(得分:2)
paint()
JFrame
& JApplet
(不要在顶级容器中绘制 - 添加JPanel
或JComponent
)。所以基本上,不要在这个时代改变方法。paintComponent()
getGraphics()
BufferedImage
(可能显示在JLabel
中)。这将提供Graphics
实例,但我更喜欢将createGraphics()
用于Graphics2D
实例(渲染提示非常棒)。