我在java上制作了一个类似MSPaint的应用程序,但我仍然坚持创建一个新的画布(白色背景JPanel)
我的代码是这样的:
public void creaLienzo(){
BufferedImage canvas=new BufferedImage(lienzo.getWidth(),
lienzo.getHeight(),BufferedImage.TYPE_INT_RGB);
Graphics2D g2=canvas.createGraphics();
g2.setBackground(Color.WHITE);
lienzo.paint(g2);
}
但是JPanel没有画出白色背景。
答案 0 :(得分:2)
设置背景不是这样做的方法。
由于您只想要这一次,请使用:
g2.setColor(Color.WHITE);
g2.fillRect(0, 0, getWidth(), getHeight());
答案 1 :(得分:0)
假设你有一个单独的画布面板,你可以这样做。
public void addNew(JPanel panel)
{
panel.removeAll();
panel.add(new Canvas());
}
您可以使用
设置jPanel的背景颜色jPanelName.setBackground(Color.white);