为什么我drawString的时候,总是在原来的地方继续draw,而没有擦去原来的string?

WonderOne 2004-08-31 04:57:55
import java.awt.*;
import javax.swing.*;

public class MyDraw extends JFrame
{
public MyDraw()
{
setSize(300, 400);
}

public void paint(Graphics g)
{
int i = 1;
while(i < 3)
{
g.drawString("number" + i, 50, 50);
i++;
}
}

public static void main(String[] args)
{
MyDraw md = new MyDraw();
md.show();
}
}
...全文
117 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
WonderOne 2004-09-02
  • 打赏
  • 举报
回复
import java.awt.*;
import javax.swing.*;
import java.util.Timer;
import java.awt.event.*;


public class OKDraw extends JFrame implements ActionListener
{
int i;
javax.swing.Timer timer=new javax.swing.Timer(1000,this);//±íʾ1000ºÁÃëÒ»Ö¡¶¯»­

public OKDraw()
{
timer.start();
setSize(300, 400);
}

public void paint(Graphics g)
{
super.paint(g);//Õâ¾ä»°·Ç³£ÖØÒª£¬²»ÒªËüµÄ»°»¹ÊÇ»áÓÐÖØµþ¡£
//g.clearRect(50, 50, 300, 300);
g.drawString("number: " + i, 50, 50);
}

public void actionPerformed(ActionEvent e)
{
if(i<10)//iµÄÖµÉ趨Ϊµ½10Ϊֹ
{
i++;
repaint();
}


}

public static void main(String[] args)
{
OKDraw md = new OKDraw();
md.show();
}
}
since2006 2004-08-31
  • 打赏
  • 举报
回复
while(i < 3)
{
//在这里画一个矩形当背景。

g.drawString("number" + i, 50, 50);
i++;
}
WonderOne 2004-08-31
  • 打赏
  • 举报
回复
那我想擦去该怎么做啊?
flyforlove 2004-08-31
  • 打赏
  • 举报
回复
你都画上去了,你没有擦出,它自己怎么可能擦出。
和你在黑板上写字一个道理。

62,623

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧