Java怎么在JPanel里面绘图
发布网友
发布时间:2022-04-30 18:46
我来回答
共3个回答
热心网友
时间:2022-06-30 01:31
可以实现一个Paintable接口
interface Paintable{ public void paint(Graphics g);}
然后在主类上挂一个Paintable的数组,比如private Vector<Paintable> drawings;
每鼠标点击一次,就往drawings里面添加一个Paintable对象。
而在主类JPanel的paint中循环依次对drawings中的所有对象进行一次性绘制。
和背景一起绘制也就不多占资源。
也可以外面结合区部重绘repaint(int x, int y, int width, int height)追问
为什么能画长方形,但是不能画位图?‘
我想知道我的代码为什么不对
追答我暂时也不明白
热心网友
时间:2022-06-30 01:32
先写一个类继承JPanel类
public class Drawing extends JPanel {
@Override
public void paint(Graphics g) {
super.paint(g);
g2D = (Graphics2D) g;
// 画你想要的东西
}
}
再把这个Panel放在你所需要放置的位置即可。
热心网友
时间:2022-06-30 01:32
BufferedImage carImage = ImageIO.read(Car.class.getResource("/cars/car.png"));