当前位置:  技术问答>java相关

为什么用paint()时上次的东西不擦除

    来源: 互联网  发布时间:2015-09-07

    本文导语:  当我调用paint()时,上次调用paint()画的东西并没有擦除掉,请问这是怎么回事? 怎样在调用paint时把上次的paint画的东西擦除? | paint(Graphics g);是直接画,而不管以前的. repaint();是先调用upd...

当我调用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();
    }
}

|
removeall   then
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()则偏重于定制调用的方式:你可以在指定时间间隔后进行重画,也可以在指定区域内绘制组件,等等。  

|
先调用removeAll(),然后添加新的组件,再调用validate()。

|
public void update(Graghics g ) {
   g.setColor(getBackground());
   g.fillRect(getBounds());
   paint(g);
}

|
用repaint()方法呀。paint()这个方法是在每次浏览器启动的时候才调用。你自己对照看看就明白了。

|
是。

    
 
 

您可能感兴趣的文章:

 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • java命名空间java.awt类container的类成员方法: paint定义及介绍
  • Java Applet的paint问题 在线
  • java命名空间java.awt类canvas的类成员方法: paint定义及介绍
  • paint () and Paintcomponent()
  • java命名空间java.awt.event类paintevent的类成员方法: paint定义及介绍
  • 关于paint方法的问题???请大家都看看
  • java命名空间javax.swing类cellrendererpane的类成员方法: paint定义及介绍
  • 在什么情况下重载paint()或paintComponent(),我不知道怎么办?
  • java命名空间javax.swing.text接口highlighter的类成员方法: paint定义及介绍
  • 求Applet中paint,repaint,update的联系和区别。
  • java命名空间javax.swing.text接口caret的类成员方法: paint定义及介绍
  • Graphics and paint(Graphics g) 问题????
  • java命名空间javax.swing.tree类defaulttreecelleditor.editorcontainer的类成员方法: paint定义及介绍
  • 画图工具 Gnome-paint
  • java命名空间javax.swing.text类glyphview的类成员方法: paint定义及介绍
  • 绘图程序 Tux Paint
  • java命名空间javax.swing.text类componentview的类成员方法: paint定义及介绍
  • 请教: 关于paint(Graphics g).
  • java命名空间javax.swing.text类glyphview.glyphpainter的类成员方法: paint定义及介绍
  • HTML5-Paint-Bucket-Tool
  • java命名空间javax.swing.plaf.basic类basictoolbarui.dragwindow的类成员方法: paint定义及介绍
  • public void paint(Graphics g)该语句对吗?


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3