当前位置: 技术问答>java相关
为什么用paint()时上次的东西不擦除
来源: 互联网 发布时间:2015-09-07
本文导语: 当我调用paint()时,上次调用paint()画的东西并没有擦除掉,请问这是怎么回事? 怎样在调用paint时把上次的paint画的东西擦除? | paint(Graphics g);是直接画,而不管以前的. repaint();是先调用upd...
当我调用paint()时,上次调用paint()画的东西并没有擦除掉,请问这是怎么回事?
怎样在调用paint时把上次的paint画的东西擦除?
怎样在调用paint时把上次的paint画的东西擦除?
|
paint(Graphics g);是直接画,而不管以前的.
repaint();是先调用update()去掉以前所画,然后调用paint();再画;
这样就是了,你要是想不去掉以前所画,就在你的Applet类中Override
update()方法.如下所示:
public void update(Fraphics g)
{
paint(g);
}
你要是想去掉以前所画,
就直接调用repaint();就好了.如下:
private class MyModelRecorder extends MouseAdapter
{
public void mousePressed(MouseEvent e)
{
Point lastClick=e.getPoint();
repaint();
}
}
repaint();是先调用update()去掉以前所画,然后调用paint();再画;
这样就是了,你要是想不去掉以前所画,就在你的Applet类中Override
update()方法.如下所示:
public void update(Fraphics g)
{
paint(g);
}
你要是想去掉以前所画,
就直接调用repaint();就好了.如下:
private class MyModelRecorder extends MouseAdapter
{
public void mousePressed(MouseEvent e)
{
Point lastClick=e.getPoint();
repaint();
}
}
|
removeall then
repaint
repaint
|
paint()没有擦掉的功能
在repaint()中先擦掉以前画的,然后调用paint()。
在repaint()中先擦掉以前画的,然后调用paint()。
|
paint()是在组件第一次显示时调用,完成组件的绘制。
update()进行初始化(背景色填充、设置组件前景色)后调用paint()绘制组件。
repaint()则调用update()。它之所以存在是因为要支持以不同的方式进行update()操作,如:repaint();repaint(long time);repaint(int x,int y,int width,int height),无参的repaint()只是对update()进行简单的调用。
可以说,paint()是最原子的操作,update()则允许在它之上对它的外观进行一些定制,repaint()则偏重于定制调用的方式:你可以在指定时间间隔后进行重画,也可以在指定区域内绘制组件,等等。
update()进行初始化(背景色填充、设置组件前景色)后调用paint()绘制组件。
repaint()则调用update()。它之所以存在是因为要支持以不同的方式进行update()操作,如:repaint();repaint(long time);repaint(int x,int y,int width,int height),无参的repaint()只是对update()进行简单的调用。
可以说,paint()是最原子的操作,update()则允许在它之上对它的外观进行一些定制,repaint()则偏重于定制调用的方式:你可以在指定时间间隔后进行重画,也可以在指定区域内绘制组件,等等。
|
先调用removeAll(),然后添加新的组件,再调用validate()。
|
public void update(Graghics g ) {
g.setColor(getBackground());
g.fillRect(getBounds());
paint(g);
}
g.setColor(getBackground());
g.fillRect(getBounds());
paint(g);
}
|
用repaint()方法呀。paint()这个方法是在每次浏览器启动的时候才调用。你自己对照看看就明白了。
|
是。
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。