java repaint()无效
本文介绍了java repaint()无效的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
初学java,绘图这里很搞不懂
package picture;
import javax.swing.*;
import java.awt.*;
/**
* Created by Smith on 2016/10/19.
*/
public class Study extends JPanel{
public int x = 1;
public int y = 1;
public static void main(String [] args)
{
new Study().init();
}
public void init()
{
JFrame jf = new JFrame("图片");
JPanel jp = new JPanel();
jf.add(jp);
jf.setSize(600,600);
jf.setVisible(true);
Graphics g = jp.getGraphics();
for(int i = 1;i<=500;i++)
{
paint(g);
x++;
y++;
}
System.out.println(g);
}
public void paint(Graphics g)
{
g.setColor(Color.blue);
g.drawString("hello",x,y);
repaint();
}
}
生成的效果图就是如上,我实际是想要hello进行移动,但repaint()放在这里为什么没有效果
解决方案
1.每次渲染前要清除之前的画布,否则会叠加起来
2.要想显示动画,需要设置休眠时间,否则也看不到中间过程
这篇关于java repaint()无效的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文