- Java code
package simpleAnimation;import javax.swing.*;import java.awt.*;public class SimpleAnimation{ int x=70; int y=70; public static void main(String[] args) { SimpleAnimation gui=new SimpleAnimation(); gui.go(); } public void go() { JFrame frame=new JFrame(); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); MyDrawPanel drawPanel=new MyDrawPanel(); frame.getContentPane().add(drawPanel); frame.setSize(300,300); frame.setVisible(true); for(int i=0;i<130;i++) { x++; y++; drawPanel.repaint(); try { Thread.sleep(50); } catch(Exception ex) {} } } class MyDrawPanel extends JPanel { public void paintComponet(Graphics g) { g.setColor(Color.white); g.fillRect(0, 0, this.getWidth(), this.getHeight()); g.setColor(Color.green); g.fillOval(x,y,40,40); } }}
为什么我的运行结果不对,应该是一个移动的圆的,但却什么都没显示?
------解决方案--------------------
楼主....谁教你画图是重写public void paintComponet(Graphics g)的?
改成public void paint(Graphics g)